Problema con innerHTML

di il
2 risposte

Problema con innerHTML

Ho questo codice, che nei miei sogni dovrebbe mostrare delle scritte a fianco dei radiobutton non selezionati:<pre id=code><font face=courier size= id=code><script language="javascript">
var vecchio_valore_radio = 0;

function vecchiovalore(nome) {
for (i=0;i<document.form1[nome].length;i++){
if (document.form1[nome][i].checked==true) {
vecchio_valore_radio = document.form1[nome][i].id;
break
} else {
vecchio_valore_radio = 0;
}
}
}

function scrivivalore(nome){
for (i=0;i<document.form1[nome].length;i++){
if (document.form1[nome][i].checked==false) {
testo = "";
} else {
testo = " <b>["+(Math.round(document.form1[nome][i].id)-Math.round(vecchio_valore_radio))+"]</b>";
}
}
for (inizio=0;i<document.form1[nome].lenght;1++){
id_span = document.form1[nome][inizio].value;
if(document.getElementById('id_span')) {
document.getElementById('id_span').innerHTML = testo;
} else {
return false;
}
}
}
</script>
<body>
<form name="form1" method="post" action="">
<p>
<input name="radiobutton" type="radio" onfocus="vecchiovalore(this.name);" onclick="scrivivalore(this.name);" id="50">Primo radio <span id="primo"></span></p>
<p>
<input name="radiobutton" type="radio" onfocus="vecchiovalore(this.name);" onclick="scrivivalore(this.name);" id="13">Secondo radio <span id="secondo"></span></p>
<p>
<input name="radiobutton" type="radio" onfocus="vecchiovalore(this.name);" onclick="scrivivalore(this.name);" id="100">Terzo radio <span id="terzo"></span></p>
</form></font id=code></pre id=code>Il problema all'inizio era che fosse troppo statico e funzionava bene solo se ci sono 2 sole opzioni, così ho provato a renderlo un pò più dinamico, ma non scrive niente a video (e non da nessun errore)! Nelle precedenti prove con soli due radio funzionava, però impostavo direttamente la variabile "testo" con 3 variabili differenti (testo, testo2, testo3)

2 Risposte

  • Re: Problema con innerHTML

    Mi sembra non esista nel tuo codice nessun elemento con id='id_span', quindi credo proprio che non sappia dove scrivere il valore.

    Riccardo

    il c# è un linguaggio tagliente...
  • Re: Problema con innerHTML

    Il getElementById vuole una stringa quindi document.getElementById(''+id_span);


    Beati coloro che non si aspettano nulla perchè non avranno delusioni
Devi accedere o registrarti per scrivere nel forum
2 risposte