Newsgroup: it.comp.lang.javascript
Titolo: compatibilità con firefox

Ciao sto cercando (ma sono veramente mooolto arruginito con JS) di
sistemare questo script anche per firefox.
Con IE funziona...
Nel Debugger javascript mi dice "document.forms[0] is not a function"
alla riga 2
In pratica sembra non riconosce la dichiarazione "obj "
... CheckBoxAction(this.checked,'IDarticolo',)
Io richiamo la funzione in questa maniera:
DIm SecondCheckbox
SecondCheckbox = valorizzio dinamicamente...può essere NULL
onClick="CheckBoxAction(this.checked,'IDrecord','"&SecondCheckbox&"');
GRAZIE e Ciao
function CheckBoxAction(Action,field,field2){
	var obj = document.forms[0](field);
	var obj2 = document.forms[0](field2);
	if(Action==true){
		for(i = 0; i < obj.length; i++){
			(obj[i].name=='IDarticolo')?obj[i].checked = true:null;
		}
		//Serve per i bundle
		if(field2!=null||field2!='undefined'){
			for(i = 0; i < obj2.length; i++){
				(obj[i].name=='IDarticolo'||obj[i].name=='IDarticoloBundle')?
obj2[i].checked = true;
			}
		}
	}else{
		for(i = 0; i < obj.length; i++){
			(obj[i].name=='IDarticolo')?obj[i].checked = false:null;
		}
		//Serve per i bundle e promo
		if(field2!=null||field2!='undefined'){
			for(i = 0; i < obj2.length; i++){
				(obj[i].name=='IDarticolo'||obj[i].name=='IDarticoloBundle')?
obj2[i].checked = false;
			}
		}
	}
}

 	var obj = document.forms[0](field);
parentesi? field? Quanto sopra già darà errore (per gli array si usano le 
quadre, non le tonde).
Mi fermo qua: devi passare a javascript, quello che hai scritto è un mix 
tra javascript e il mortoEVetusto vbscript.


Grazie ...ma forse mi sono ovviamente spiegato male...
ti ho passato la parte dinamica del codice...alla fine nell'html c'è
solo l'output pulito...nessuna variabile dinamica...
adesso vedo con queste due drite a sistemare la cosa...
Grazie per ora.
BYE

 a sistemare la cosa... Grazie per ora.
Ah ok, quello era un mix client-side e server-side? stai usando quindi asp 
con vbscript server-side? brrr .... Però ok, allora non centra col 
problema.
Se non risolvi posta la parte HTML (inviato alla pagina) incriminata, 
così vediamo anche cosa scrive al posto delle variabili server-side.

Ecco il JS con le spiegazioni....
dovrebbe eseguire il check solo dei "IDarticolo" e funzionare anche in
Firefox.
in IE mi funziona.
Spero di non aver dimenticato nulla.
GRAZIE
<html>
<head>
<script language="JavaScript" type="text/JavaScript">
//Action = this.checked (se sto check-in o check-out)
//field = 'IDarticolo' (può essere sia array che singolo...diciamo
array che è meglio)
//field2 = può essere valorizzato sia come 'IDarticoloBundle' oppure
come '' (può essere sia array che singolo...diciamo array che è
meglio)
function CheckBoxAction(Action,field,field2){
	var obj = document.forms[0](field);
	var obj2 = document.forms[0](field2);
	if(Action==true){
		for(i = 0; i < obj.length; i++){
			obj[i].checked = true;
		}
		//Serve per i bundle e promo
		if(field2!=null){
			for(i = 0; i < obj2.length; i++){
				obj2[i].checked = true;
			}
		}
	}else{
		for(i = 0; i < obj.length; i++){
			obj[i].checked = false;
		}
		//Serve per i bundle e promo
		if(field2!=null){
			for(i = 0; i < obj2.length; i++){
				obj2[i].checked = false;
			}
		}
	}
}
</script>
</head>
<body>
<form name="Unico">
<p>
<INPUT TYPE=CHECKBOX NAME="altro">una selezione esterna<br>
</p>
<INPUT TYPE=CHECKBOX NAME="IDarticolo" id="IDarticolo0"><br>
<INPUT TYPE=CHECKBOX NAME="IDarticolo" id="IDarticolo1"><br>
<INPUT TYPE=CHECKBOX NAME="IDarticolo" id="IDarticolo2"><br><br><br>
seleziona tutti checkbox <INPUT TYPE=CHECKBOX NAME="All" id="All0"
onClick="CheckBoxAction(Action,'IDarticolo','');">
</form>
</body>
</html>

 	var obj = document.forms[0](field);
vedo che usi ancora le parentesi ... leggi mio post precedente.


in questo modo?
var obj = document.forms[0][field]

 var obj = document.forms[0][field]
sì ... prova un po'. Che gli indici vengano indicati tra parentesi tonde 
(come se fosse un metodo) è un orrore vb-only.