Les cuento... hice un pequeño script para validar un formulario de registro en una página. El tema es que de golpe, no se que habré tocado sin darme cuenta, dejó de funcionar en el IE, el resto de los exploradores lo toman bien (Safari, FF, Opera)
El script es el siguiente:
Código :
function checkMail(mail){ re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/; if(re.test(mail)){ return true; }else{ alert('Direccion de e-mail invalida!\n'+mail); return false; } } function checkNSend(){ var al = checkForm(); if(al){ alert(al); return false; }else{ return true; } return false; } function checkForm(){ formulario = document.form; var apellido = formulario.apellido.value; var nombre = formulario.nombre.value; var dia = formulario.dia.options[formulario.dia.selectedIndex].value; var mes = formulario.mes.options[formulario.mes.selectedIndex].value; var anio = formulario.anio.options[formulario.anio.selectedIndex].value; var empresa = formulario.empresa.value; var cargo = formulario.cargo.value; var division = formulario.division.value; var tel = formulario.telefono.value; var calle = formulario.calle.value; var nro = formulario.numero.value; var email = formulario.email.value; var localidad = formulario.localidad.value; var cp = formulario.cp.value; var pais = formulario.pais.selectedIndex; falta = new Array; var top = 0; //Chequeo que haya escrito el apellido if(apellido){ //ok }else{ top = top + 1; falta[top] = 'Apellidos'; } //Chequeo que haya escrito el nombre if(nombre){ //ok }else{ top = top + 1; falta[top] = 'Nombre'; } //Chequeo que haya escrito el empresa if(empresa){ //ok }else{ top = top + 1; falta[top] = 'Empresa'; } //Chequeo que haya escrito el cargo if(cargo){ //ok }else{ top = top + 1; falta[top] = 'Cargo'; } //Chequeo que haya escrito division if(division){ //ok }else{ top = top + 1; falta[top] = 'Division'; } //Chequeo que haya escrito email if(email){ if(!checkMail(email)){ top = top + 1; falta[top] = 'E-Mail'; } //ok }else{ top = top + 1; falta[top] = 'E-Mail'; } //Chequeo que haya escrito el Pais if(pais != 0){ //ok }else{ top = top + 1; falta[top] = 'Pais'; } //Chequeo que haya escrito el telefono if(tel){ //ok }else{ top = top + 1; falta[top] = 'Telefono'; } //Chequeo que haya escrito la calle if(calle){ //ok }else{ top = top + 1; falta[top] = 'Calle'; } //Chequeo que haya escrito el numero if(nro){ //ok }else{ top = top + 1; falta[top] = 'Numero'; } //Chequeo que haya escrito la localidad if(localidad){ //ok }else{ top = top + 1; falta[top] = 'Localidad'; } //Chequeo que haya escrito dia if(dia){ //ok }else{ top = top + 1; falta[top] = 'Día'; } //Chequeo que haya escrito mes if(mes){ //ok }else{ top = top + 1; falta[top] = 'Mes'; } //Chequeo que haya escrito aЯo if(anio){ //ok }else{ top = top + 1; falta[top] = 'Año'; } if(top == 0){ return false; }else{ var alerta = 'Ingrese los siguientes campos:\n'; for(a = 1; a <= top; a++){ alerta += '\n - '+falta[a]; } return alerta; } }
El archivo el IE lo toma...
Bueno, espero que me puedan ayudar...
Muchas gracias desde ya!...
Pablo