¿Y si en lugar de utilizar dos formularios usas uno para enviar toda la información?, sería más fácil de controlar por el tema de las validaciones. Si de todos modos quieres usar dos formularios, puedes usar una variable comodín para decidir si se enviará o no el segundo formulario, por ejemplo:
Código Javascript
:
Ver originalvar form1 = document.getElementById("form1"),
form2 = document.getElementById("form2"),
comodin = true;
for (i = 0, limite = form1.elements.length, i < limite; i++){
if (form1.elements[i].value.length == 0){
alert("Debe ingresar datos en el campo " + form1.elements[i].name);
comodin = false;
form1.elements[i].focus();
break;
}
}
if (comodin){
form1.submit();
form2.submit();
}
Recorro todos los elementos del primer formulario, si alguno de ellos está vacío, lanzo una alerta indicándole al usuario que debe ingresar datos en el campo vacío, el valor del comodín cambia a
false, le doy el enfoque al campo vacío y salgo del bucle con el que estoy recorriendo los elementos del primer formulario. Luego, si y sólo si el valor del comodin es
true, envío los datos de ambos formularios.
Saludos