Foros del Web » Programando para Internet » Javascript »

Script de Javascript no funciona en IE

Estas en el tema de Script de Javascript no funciona en IE en el foro de Javascript en Foros del Web. Hola gente, este es mi primer post dentro de la comunidad, a la cual, siempre recurro para evacuar mis dudas, en este caso, no encontre ...
  #1 (permalink)  
Antiguo 22/05/2011, 12:10
 
Fecha de Ingreso: mayo-2011
Mensajes: 3
Antigüedad: 12 años, 10 meses
Puntos: 0
Pregunta Script de Javascript no funciona en IE

Hola gente, este es mi primer post dentro de la comunidad, a la cual, siempre recurro para evacuar mis dudas, en este caso, no encontre solucion, por ello lo pregunto aqui. La cuestion es que tengo un script de javascript que no me funciona en IE, en Chrome y Mozilla funciona correctamente. les dejo el script para que lo vean:

Código HTML:
<script language="javascript">
	function validar_nick (){
		//Campo nickname
		if (document.form_usuario.nick.value.length<5){ //validamos el nombre
			msj_nick = document.getElementById("msj_nick");
			msj_nick.innerHTML = '<span class="txt_red">Su nickname, debe ser mas largo</span>';
			return(false);
		} else {
			msj_nick = document.getElementById("msj_nick");
			msj_nick.innerHTML = '<img src="images/ico/ok.png" />';
			return(true);
			}
	}
	function validar_mail (){
		//Campo mail
		email = document.form_usuario.email.value;
		filtro =/^[^@\s]+@[^@\.\s]+(\.[^@\.\s]+)+$/;
		if (filtro.test(email)){
   			msj_mail = document.getElementById("msj_mail");
			msj_mail.innerHTML = '<img src="images/ico/ok.png" />';
			return (true);
		  } else {
				msj_mail = document.getElementById("msj_mail");
				msj_mail.innerHTML = '<span class="txt_red">La direccion de email, es incorrecta</span>';
				return(false);
			}
	}
	
	function validar_pass () {
			pass = document.form_usuario.pass.value;
			if (pass > 5) {
			repass = document.form_usuario.repass.value;
			if (pass == repass){
				msj_pass = document.getElementById("msj_pass");
				msj_pass.innerHTML = '<img src="images/ico/ok.png" />';
				return (true);
			} else {
				msj_mail = document.getElementById("msj_pass");
				msj_mail.innerHTML = '<span class="txt_red">La contraseña no coincide</span>';
				return(false);
				}
			} else {
				msj_mail = document.getElementById("msj_pass");
				msj_mail.innerHTML = '<span class="txt_red">La contraseña es demasiado corta</span>';
				return(false);
			}
	}
	
	function validar_fecha(){
		fecha = document.form_usuario.fecha.value;
		msj_fecha = document.getElementById("msj_fecha");
		if (fecha != "" ){
			if (!/^\d{2}\-\d{2}\-\d{4}$/.test(fecha)){
				msj_fecha.innerHTML = '<span class="txt_red">Formato de fecha invalido</span>';
				return(false);
			}
			var dia  =  parseInt(fecha.substring(0,2),10);
			var mes  =  parseInt(fecha.substring(3,5),10);
			var anio =  parseInt(fecha.substring(6),10);
	 
		switch(mes){
			case 1:
			case 3:
			case 5:
			case 7:
			case 8:
			case 10:
			case 12:
				numDias=31;
				break;
			case 4: case 6: case 9: case 11:
				numDias=30;
				break;
			case 2:
				if (comprobarSiBisisesto(anio)){ numDias=29 }else{ numDias=28};
				break;
			default:
				msj_fecha.innerHTML = '<span class="txt_red">Fecha no valida</span>';
				return false;
    }
 
        if (dia>numDias || dia==0){
            msj_fecha.innerHTML = '<span class="txt_red">Fecha no valida</span>';
            return false;
        }
		msj_fecha.innerHTML = '<img src="images/ico/ok.png" />';
        return true;
    }
}
	function comprobarSiBisisesto(anio){
		if ( ( anio % 100 != 0) && ((anio % 4 == 0) || (anio % 400 == 0))) {
			return true;
			}
		else {
			return false;
			}
		}
	
   	function enviar_form (){
	//Si paso por todos los if, esta correcto para enviar, y se envia.
		if (validar_nick() && validar_mail() && validar_pass() && validar_fecha()) {
   			document.form_usuario.submit();
		} else {
			validar_nick();
			validar_mail();
			validar_pass();
			validar_fecha();
		}
	}
</script> 
Espero puedan ayudarme. Saludos!
  #2 (permalink)  
Antiguo 22/05/2011, 14:23
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Script de Javascript no funciona en IE

has de ser mas concreto de cual es el problema. al no dejar el form y no decir cual es el error que te levanta, lo único que se puede hacer es ir línea por línea, y como comprenderás ......
  #3 (permalink)  
Antiguo 22/05/2011, 15:25
 
Fecha de Ingreso: mayo-2011
Mensajes: 3
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Script de Javascript no funciona en IE

Pido disculpa por hacer algo "insulso" el post, aclaro que:

No acusa error, simplente, no ejecuta las funciones del javascript. Aqui dejo el codigo del form:

Código HTML:
<form action="guardar_usuario.php" method="post" name="form_usuario">
						<table align="center" width="570px">
							<tr>
								<td width="120">
									Nickname: <span class="txt_red">*</span>
								</td>
								<td width="215">
									<input type="text" name="nick" class="input200" onchange="validar_nick()" onblur="validar_nick()"/>
								</td>
								<td width="180">
									<div id="msj_nick"></div>
								</td>
							</tr>
							<tr>
								<td width="120">
									Email: <span class="txt_red">*</span>
								</td>
								<td width="215">
									<input type="text" name="email" class="input200" onchange="validar_mail()" onblur="validar_mail()"/>
								</td>
								<td width="180">
									<div id="msj_mail"></div>
								</td>
							</tr>
							<tr>
								<td width="120">
									Contraseña: <span class="txt_red">*</span>
								</td>
								<td width="215">
									<input type="password" name="pass" class="input200" />
								</td>
								<td width="180">
								</td>
							</tr>
							<tr>
								<td width="120">
									Repita contraseña: <span class="txt_red">*</span>
								</td>
								<td width="215">
									<input type="password" name="repass" class="input200" onchange="validar_pass()" onblur="validar_pass()"/>
								</td>
								<td width="180">
									<div id="msj_pass"></div>
								</td>
							</tr>
							<tr>
								<td width="120">
									Fecha de nacimiento: <span class="txt_red">*</span>
								</td>
								<td width="215">
									<input type="text" name="fecha" class="input100" value="dd-mm-aaaa" onchange="validar_fecha()" onblur="validar_fecha()"/>
								</td>
								<td width="180">
									<div id="msj_fecha"></div>
								</td>
							</tr>
							<tr>
								<td width="120">
									imagen de perfil:
								</td>
								<td width="215">
									<input type="text" name="img_perfil" class="input200" value="http://"/>
								</td>
								<td width="180">
								</td>
							</tr>
							<tr>
								<td width="120">
									¿Cuanto es? <?php echo $capt ?>&nbsp;<span class="txt_red">*</span>
								</td>
								<td width="215">
									<input type="text" name="user_capt" class="input100"/>
								</td>
								<td width="180">
								</td>
							</tr>
							<tr>
								<td colspan="2" align="center">
									<input type="button" class="boton_blue_100" value="Enviar" onclick="enviar_form()" />
								</td>				
								<td width="180">
								</td>
							</tr>
						</table>
					</form> 
  #4 (permalink)  
Antiguo 24/05/2011, 06:41
 
Fecha de Ingreso: mayo-2011
Mensajes: 3
Antigüedad: 12 años, 10 meses
Puntos: 0
De acuerdo Respuesta: Script de Javascript no funciona en IE

Hola gente, bueno el error que existe es muy sonso, lo aclaro por si a alguno le ocurre lo mismo

Simplemente, el error que cometi, es no declarar las variables en JS como:

var nombre_de_la_variable

Si no las declaramos, IE no las tomara, caso contrario FF si. Eso es todo, Saludos!

Etiquetas: explorer, internet
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:56.