Ciao a tutti, il mio problema è il segeunte
ho una form
<form action='modifier.php?kpt=$primo' method='POST' name='mod' onSubmit=\"return check_form();\">
.......
echo "<tr><td><input type='radio' name='scelta' value='".$result[0]."'></td><td>".stripslashes(utf8_encode($result[1]))."</td><td>".stripslashes(utf8_encode($result[2]))."</td>";
if((mysql_field_name($rs, 3)!='foto') && (mysql_field_name($rs, 3)!='video')){
echo "<td>".stripslashes(utf8_encode($result[3]))."</td></tr>";
}
else
echo "</tr>";
}
}
echo "</table>
<input class='sub' type='submit' value='Modifica'></form>
";
Generata dinamicamente da codice php. Questa form come potete vedere rimanda ad uno script js check_form() che mi controlla se i radio sono selezionati. Il codice è questo.
function check_form() {
var controllo = false;
var bottone = document.mod.scelta;
if(bottone.length == 1){
controllo = true;
}
else{
for(var i=0; i<bottone.length; i++) {
if(bottone[i].checked) {
controllo = true;
break;
}
}
}
if(!controllo) {
alert("Bisogna effettuare almeno una scelta.");
return false;
}
return true;
}
Ora se i radio generati sono più di una lo script funziona bene, mentre se me ne da soltanto uno e come se non me lo vedesse e mi ritorna sempre false. Ho provato a cambiare i valori nel ciclo for, ma niente. Come mai?