Newsgroup: it.comp.lang.javascript
Titolo: Controllo esistenza variabile array + extra

Ciao a tutti.
Avrei bisogno di controllare se una variabile array è presente oppure no 
in un form.
Mi spiego meglio, devo fare una specie di sondaggio in più step e in 
base a cosa rispondo devo spostarmi in una pagina piuttosto che in 
un'altra, quindi volevo fare dei controlli universali.
In poche parole, con una variabile normale farei una cosa del genere:
if (nomeform.domanda2 && nomeform.domanda2.type!="hidden") {condizione}
Invece x la variabile array (che mi serve per i campi checkbox con + 
risposte), se scrivo così:
if (nomeform.domanda2[]) {condizione}
Mi da errore!
Qualcuno sa la sintassi giusta?
Inoltre volevo chiedere se per fare il controllo x sapere se ho checcato 
almeno una checkbox, se è giusto fare così:
ceccato=false;
arrForm=nomeform.elements;
for (var zz = 0; zz <arrForm.length; zz++)
{
	if (arrForm[zz].type=="checkbox" && arrForm[zz].checked==true && 
arrForm[zz].name=="nomecampo")
	{
		ceccato=true;
		break;
	}
}
ovvero se devo sfogliarmi tutti i campi del form
o se c'è un modo di farlo come si fa per i radio button, cosa che ho 
provato ma mi da errore.
Grazie in anticipo
ciaociao
-- 
             .-'''''-.     SCIRIO
           .'         `.   100% COMMERCIALE
          :    §©I®IØ   :  
http://scirio.altervista.org
         :               :
         :      _/|      : Cinemaz:
          :   =/_/      :  
http://scirio.altervista.org/cinema/
           `._/ |     .'
        (   /  ,|...-'     Vuoi 1 battuta al giorno gratis? Iscriviti:
         \_/^\/||__        
http://scirio.altervista.org/iscriviti.php
      _/~  `""~`"` \_
   __/  -'/  `-._ `\_\__   "La guerra è come la pena di morte...
/ /   /-'`  `\   \  \-.\  "...quando ce vò ce vò!"

 e` praticamente lo stesso.
bè con quel metodo scorro tutto il form no?
non dovrebbe essere + lento?
con i radio facevo così:
var radioSelezionato = false;
	for (i = 0;  i < eval("nomeform."+quale).length;  i++)
	{
		if (eval("nomeform."+quale)[i].checked)
		radioSelezionato = true;
	}
	if (radioSelezionato == false)
	{
     	alert("Attenzione, selezionare almeno una voce per questa domanda.");
		eval("nomeform."+quale)[0].focus();
     	return false;
  	}
però non sono riuscito ad adattarlo x i checkbox
ho problemi con la sintassi delle quadre dell'array


 Usa questo: document.nomeform.elements[quale][i].checked
grazie sono riuscito ad ottimizzare lo script
per vedere se una variabile array è presente nel form sai come si fa?
con quelle normali faccio:
if (document.nomeform.nomevariabile)
con gli array non so la giusta sintassi!


 in questo caso puoi usare document.nomeform.nomecampo.type=='array'
a me alla fine interessa sapere se è array, non c'è o è hidden
perchè quando c'è è un checkbox, dopo aver compilato il form diventa una 
variabile unica, mentre all'inizio non esiste
adesso provo a mettere la tua condizione come controllo
thanks


 al server.
lato form dicevo
nel senso che è un questionario a + pagine
ed in una pagina magari non c'è ancora la domanda
o non ci sarà mai se si segue una strada diversa
tramite javascript devo fare il controllo sui checkbox solo quando sono 
nella pagina giusta
e al momento ho risolto con un'altra variabile che individua lo step 
giusto, un pò un accrocchio ma x il momento andava bene :p
