Buongiorno a tutti.
Sto lavorando in Firefox 3.0.7.
Ho una funzione che inserisce una riga, contenente un <select name=MySEL> e una <img name=MyIMG>, in un DIV contenuto in un Form, tante volte quanto vale il parametro in ingresso.
Un'altra funzione provvede a controllare il valore di ogni Select modificando eventualmete il src della IMG (un segno di "Spunta" o un coso rosso per visualizzare la validità della scelta).
Il problema nasce quando ho soltanto UNA riga inserita (quindi UN select e UNA img):
Gli array, in questo caso, non esistono(e quindi document.MyForm.MyIMG[0] è undefined, mentre devo usare document.MyForm.MyIMG).
Questo fa sì che debba avere un " if (numero_di_righe>1) {" in OGNI SINGOLA funzione che cicla su questi arrays....
Non c'è proprio modo di "vederli" come arrays con un solo elemento?
Allego un "estratto" della funzione di scrittura e di quella di controllo
Graziecodice:function WriteDIV() { var i,j; var strcode=""; for (i=0;i<Globals.numrighe;i++){ strcode += '<select onchange="MySEL _val(' + i +')" name="MySEL">'; strcode += '<option selected="selected">--</option>'; for (j=1;j<Globals.Articles.length;j++){ strcode += '<option>' + Globals.Articles[j] + '</option>'; } strcode += '</select>[img]+aBB+[/img] '; } document.getElementById("divArticles").innerHTML = strcode; } function TestChoices(){ var i; for (i=0;i<Globals.numrighe;i++) { if (document.MyFORM.MySEL[i].selectedIndex!=0) { // ERRORE SE Globals.numrighe==1 document.MyFORM.MyIMG[i].src=aGL; // ERRORE SE Globals.numrighe==1 }else{ document.MyFORM.MyIMG[i].src=aRL; // ERRORE SE Globals.numrighe==1 } }
<editato perchè ho scritto una serie di stupidate, scusate>

 
			
			 
					
					
					
						 Rispondi quotando
  Rispondi quotando