Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/11/2010, 17:58
juancarlos2010
 
Fecha de Ingreso: noviembre-2010
Ubicación: Capital Federal
Mensajes: 3
Antigüedad: 13 años, 5 meses
Puntos: 0
Pregunta Validar varios form similares en una página, c/igual nombre de campo radio

Hola a tod@s:
Mucho me han ayudado los foros de aqui, leyéndolos "desde fuera", asi que me he inscripto
y va mi primer pregunta para algo que hace dias no puedo resolver ni hallar respuesta:

Tengo una pag en PHP donde con un lazo genero varios formularios, con nombres consecutivos
form1, form2, form3, etc. Cada form tiene un grupo de 3 radio con el mismo nombre de variable.
Abreviando, es esto:

$i=0 ;
// inicio lazo

$i=++i;
<FORM ACTION="grabar.php" METHOD="GET" onSubmit="return validar()" NAME="form'.$i.'">
<INPUT TYPE="radio" VALUE="borrar" NAME="cali" >Borrar <br>
<INPUT TYPE="radio" VALUE="nook" NAME="cali" >Mal <br>
<INPUT TYPE="radio" VALUE="ok" NAME="cali" > Bien <br>
<INPUT type="image" img src="../img/boton_enviar.gif">
</FORM>


// fin lazo

Al ver el código fuente del navegador veo que esto anda perfecto. Ahora, si suponemos
ue cada form es independiente y al envíar solo manda SU contenido a la funcion validar,
la funcion JS más simple que se me ocurrió es:

function validar()
{if ((document.form.cali[0].checked==true)
||(document.form.cali[1].checked==true)
|| (document.form.cali[2].checked==true))
{return (true);}
else { alert(" Oppsss... ¡ FALTA LA CALIFICACIÓN ! "); return (false);}
}


Sin embargo, no funciona... Ya he probado poniendo id en los radio, indexando de otra forma
los checked en la función, recuperando los valores con getElementsByName sin éxito: la accion se ejecuta
aún sin ningun radio marcado.

¿Alguno podrá darme una sugerencia ?
Gracias desde ya.
Juan Carlos

Última edición por juancarlos2010; 28/11/2010 a las 18:09