|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2005
Città: Resana - TV
Messaggi: 960
|
[javascript] valori sballati
ciao a tutti,
ho una pagina jsp che crea dinamicamente le chiamate ad una funzione javascript, praticamente una cosa del genere: Codice:
<input type="radio" id="cLivello<%=indice%>" name="cLivello<%=indice%>" value="<%=valore%>" ondblclick="azzera(<%=indice%>,5);"> se ad esempio indice vale 0 e quindi l'html risultante sarà: Codice:
<input type="radio" id="cLivello0" name="cLivello0" value="pippo" ondblclick="azzera(0,5);"> non ci capisco più niente qualcuno ha qualche idea in merito? grazie e 'iao |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2005
Città: Resana - TV
Messaggi: 960
|
Codice:
function azzeraEsperienza(indice){
alert(indice);
alert(parseInt(indice));
var cLivello = 'cLivello' + parseInt(indice);
var CancLiv = 'CancLiv' + parseInt(indice);
document.all.item(CancLiv).value = "-1";
var i=0;
for( i = 0 ; i < document.all.item(cLivello).length; i++)
{
//azzera lo stato del gruppo radio
if (document.all.item(cLivello)[i].checked == true)
document.all.item(cLivello)[i].checked = false;
}
}
quei due alert danno sempre un risultato diverso da quanto scritto effettivamente nel codice html! per quanto riguarda document.all e tutte le porcherie che ci sono, non occorrono consigli, purtroppo sta webapp è stata fatta un po' di tempo fa da un'altra persona che se ne infischiava degli standard...per non parlare di 10 tabelle una annidata nell'altra comunque, non è che per caso potrebbe essere un problema di codifica del file? sotto questo punto di vista non ho mai capito na mazza, ma ho letto che netbeans (sto usando il 5 sotto fedora core 5) fa un po' quello che vuole, così mi è venuto in mente che forse potrebbe essere questa la causa! grazie mille intanto 'iao |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Apr 2005
Città: Resana - TV
Messaggi: 960
|
aggiungo un info e uppo!
nonostante tra javascript e html i valori siano differenti, la funzione azzera: Codice:
...
var cLivello = 'cLivello' + parseInt(indice);
...
for( i = 0 ; i < document.all.item(cLivello).length; i++)
{
//azzera lo stato del gruppo radio
if (document.all.item(cLivello)[i].checked == true)
document.all.item(cLivello)[i].checked = false;
}
quindi document.all.item(cLivello) dove la variabile cLivello in javascript ha come valore "cLivello107" mi prende correttamente l'oggetto "cLivello0" (correttamente nel senso che cLivello dovrebbe valere "cLivello0" in quanto è composto da Codice:
"cLivello" + indice; oddio ogni spiegazione che do è sempre più incasinata, beh spero che riusciate a capirmi! e soprattutto ad aiutarmi! 'iao |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2005
Città: Resana - TV
Messaggi: 960
|
altra info che mi stavo dimenticando, esplorando la pagina con un qualsiasi dom explorer, risulta che effettivamente abbia ragione javascript e che la visualizzazione del codice html sia sbagliata, in quanto l'id dell'oggetto preso in esame vale "cLivello107" e non "cLivello0"
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:44.



















