Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/07/2003, 13:22
Avatar de TurKa
TurKa
 
Fecha de Ingreso: enero-2003
Ubicación: Gerli, Avellaneda
Mensajes: 543
Antigüedad: 21 años, 4 meses
Puntos: 4
Hola knarfy.
El error está en que cuando un campo está vació le asignas un valor único a la variable clave, que es 0:
clave=0 y si no está vacío, le asignas otro valor único. De esa forma, dependerá del último campo que revise la función valida_form para tomar el valor de clave ya sea 0 o 1.
Entonces, lo que tienes que hacer es convertir esos valores en valores variables.
Por ejemplo:
Estableces en principio el valor principal (vañga la redundancia) de clave:

clave = 0;

si el campo está vacío, sumarle 1 al valor de clave:
if (form1.txtnombre.value==""){a1="\n - Nombre";clave+=1;}
y sino, sumarle 0
else{a1="";clave+=0}

y luego le dices que hacer.

Si el valor de clave es distinto que 0 (es que algun campo vacío hay entonces lanzar el alerta):
if (clave !=0) {
txt="Faltan los siguientes campos:";
alert(txt+a1+a2+a3+a4+a5+a6+a7+a8+a9+a10+a11+a12+a 13+a14+a15+a16+a17+a18+a19+a20+a21+a22+a23+a24+a25 );
}


Sino (o sea que es igual a 0 porque todos los campos están llenos. por lo tanto, enviame el formulario):
else {
form1.submit();
}


Entonces, te quedaría este script:
Código:
function valida_form(){
clave = 0
if (form1.txtnombre.value==""){a1="\n - Nombre";clave+=1;}else{a1="";clave+=0}
if (form1.txtapellido1.value==""){a2="\n - 1er Apellido";clave+=1}else{a2="";clave+=0}
if (form1.txtapellido2.value==""){a3="\n - 2º Apellido";clave+=1}else{a3="";clave+=0}
if (form1.txtfijo.value==""){a4="\n - Teléfono Fijo";clave+=1}else{a4="";clave+=0}
if (form1.txtmovil.value==""){a5="\n - Teléfono Móvil";clave+=1}else{a5="";clave+=0}
if (form1.txtcontacto.value==""){a6="\n - Horario de Contacto";clave+=1}else{a6="";clave+=0}
if (form1.txtmail.value==""){a7="\n - Email";clave+=1}else{a7="";clave+=0}
if (form1.selEstado.value=="0"){a8="\n - Estado Civil";clave+=1}else{a8="";clave+=0}
if (form1.txtedad.value==""){a9="\n - Edad";clave+=1}else{a9="";clave+=0}
if (form1.txtdomicilio.value==""){a10="\n - Domicilio";clave+=1}else{a10="";clave+=0}
if (form1.txtcp.value==""){a11="\n - C.P.";clave+=1}else{a11="";clave+=0}
if (form1.txtprovincia.value==""){a12="\n - Provincia";clave+=1}else{a12="";clave+=0}
if (form1.selVivienda.value=="0"){a13="\n - Tipo de Vivienda";clave+=1}else{a13="";clave+=0}
if (form1.txtnomina.value==""){a14="\n - Nómina";clave+=1}else{a14="";clave+=0}
if (form1.txtpagas.value==""){a15="\n - Nº de Pagas";clave+=1}else{a15="";clave+=0}
if (form1.txtingresos.value==""){a16="\n - Ingresos Certificados";clave+=1}else{a16="";clave+=0}
if (form1.txtpension.value==""){a17="\n - Pensión";clave+=1}else{a17="";clave+=0}
if (form1.SelTipo.value=="0"){a18="\n - Tipo de Inmueble";clave+=1}else{a18="";clave+=0}
if (form1.txtimporte.value=="0"){a19="\n - Importe a Financiar";clave+=1}else{a19="";clave+=0}
if (form1.txtentrada.value=="0"){a20="\n - Entrada";clave+=1}else{a20="";clave+=0}
if (form1.txtCausa.value==""){a21="\n - Causa de la Solicitud";clave+=1}else{a21="";clave+=0}
if (form1.txtmetros.value==""){a22="\n - Metros Construidos";clave+=1}else{a22="";clave+=0}
if (form1.SelAnnos.value=="0"){a23="\n - Plazo de Pago";clave+=1}else{a23="";clave+=0}
if (form1.SelInteres.value=="0"){a24="\n - Tipo de Interés";clave+=1}else{a24="";clave+=0}
if (form1.txtcuota.value=="0"){a25="\n - Couta";clave+=1}else{a25="";clave+=0}

if (clave !=0) {
txt="Faltan los siguientes campos:";
alert(txt+a1+a2+a3+a4+a5+a6+a7+a8+a9+a10+a11+a12+a13+a14+a15+a16+a17+a18+a19+a20+a21+a22+a23+a24+a25);
}

else {
form1.submit();
}
}
Solucionado entonces?
Besos!
__________________
Programación LAMP con Scrum y XP
www.eugeniabahit.com.com.ar