Que tal gente de forosweb.
Soy nuevo en el foro, tambien pues quiero que me ayuden a comprender mi codigo del cual (no soy tan bueno, pero ahi hago el intento =P.
Les explico:
// comprobando radio button
//creando funcion donde se "atrapa" a form1, quienes tengan id "" que si son
falsos por medio de array (arreglo)
function validaRadio() {
// validate myradiobuttons
var numero = -1;
for (i=form1.preguntas-1; i > -1; i++) {
if (form1.preguntas[i].checked) {
numero = i; i = -1;
}
}
if (numero == -1) {
alert("Ups!. Aun falta que selecciones una opcion para continuar");
return false;
}
}
Normalmente estoy llamando a form al igual que "preguntas" ya que este es el id que identifique a todos los radios. El problema surge cuando a la hora de validar, ya que cuando selecciono todas las opciones me sigue marcando que aún no he seleccionado alguna opción.
Intente con agregar else para devolver el valor true y asi pudiera dejar pasar la validacion pero no me ayudo de mucho. Espero me puedan ayudar a comprender esto y despues invitarlos a comer carnitas .
Dejo una parte del codigo HTML:
<form name="form1"action="encuesta.php" method="post" onSubmit="return validaRadio();">
<p> Pregunta1 </p>
<p>
<input name="pregunta1" type="radio" value="opcion1" id="preguntas"/>
opcion1
<input name="pregunta1" type="radio" value="opcion2" id="preguntas"/>
opcion2
<input name="pregunta1" type="radio" value="opcion3" id="preguntas"/>
opcion3
<input name="pregunta1" type="radio" value="opcion4" id="preguntas"/>
opcion4
<input name="pregunta1" type="radio" value="opcion5" id="preguntas"/>
opcion5 </p>
<p> Pregunta2</p>
<p>
<input name="pregunta2" type="radio" value="opcion1" id="preguntas"/>
opcion1
<input name="pregunta2" type="radio" value="opcion2" id="preguntas"/>
opcion2
<input name="pregunta2" type="radio" value="opcion3"id="preguntas" />
opcion3
<input name="pregunta2" type="radio" value="opcion4" id="preguntas"/>
opcion4
<input name="pregunta2" type="radio" value="opcion5" id="preguntas"/>
opcion5</p>
<p><input type="submit" name="enviar" value="Enviame" /></p>