Foros del Web » Programando para Internet » Javascript »

Funciona en Firefox y no en Internet Explorer 6 y 7

Estas en el tema de Funciona en Firefox y no en Internet Explorer 6 y 7 en el foro de Javascript en Foros del Web. Me podría ayudar a descubrir porqué esta función: Código: function comprobarTodo(dia,mes, ano) { diaPedido = parseInt(document.getElementById('dia').value); mesPedido = parseInt(document.getElementById('mes').value); anoPedido = parseInt(document.getElementById('ano').value); if (anoPedido>ano) { ...
  #1 (permalink)  
Antiguo 05/06/2009, 10:15
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Funciona en Firefox y no en Internet Explorer 6 y 7

Me podría ayudar a descubrir porqué esta función:

Código:
function comprobarTodo(dia,mes, ano)
{
diaPedido = parseInt(document.getElementById('dia').value);
mesPedido = parseInt(document.getElementById('mes').value);
anoPedido = parseInt(document.getElementById('ano').value);

if (anoPedido>ano)
{
	continuar();
}
else
{
	if (anoPedido == ano)
	{
		if (mesPedido > mes)
		{
			continuar();
		}
		else{
				if (mesPedido == mes){
					if (diaPedido>=dia)
					{
						continuar();
					}
					else{
						alert ("No puede seleccionar una fecha con un margen de dos días, o anterior a la fecha actual.");
					}
				}
				else{
					alert ("No puede seleccionar una fecha anterior a la actual.");
				}
		}
	}
	else
	{
		alert("Ha introducido una fecha de pedido inválida, el año del pedido no puede ser inferior al actual.");
	}
}
			
}
Me funciona a las mil maravillas en Firefox pero no en Internet Explorer, donde directamente ante la misma selección mientras Firefox canaliza perfectamente la respuesta, el siempre se va a:

Código:
		alert("Ha introducido una fecha de pedido inválida, el año del pedido no puede ser inferior al actual.");
Muchísimas gracias y un saludo.

Última edición por TobyMudito; 05/06/2009 a las 10:55 Razón: SOLUCIONADO
  #2 (permalink)  
Antiguo 05/06/2009, 10:23
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Funciona en Firefox y no en Internet Explorer 6 y 7

¿Cómo llamas a la función?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 05/06/2009, 10:25
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Funciona en Firefox y no en Internet Explorer 6 y 7

Así:

Código HTML:
<input name="Continuar" type="button" value="Continuar" onclick="comprobarTodo(<?php echo $_SESSION['dia']; echo ","; echo $_SESSION['mes']; echo ","; echo $_SESSION['ano'];?>);"/> 
  #4 (permalink)  
Antiguo 05/06/2009, 10:28
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Funciona en Firefox y no en Internet Explorer 6 y 7

No debería dar problemas, ¿has probado a colocar alert para saber cuáles son los valores de las variables en cada paso?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 05/06/2009, 10:47
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Funciona en Firefox y no en Internet Explorer 6 y 7

Curiosamente los alert introducidos me muestra lo siguiente:
NaN 6 NaN 7 7 2009

el decir, que diaPedido y anoPedido no se cargan correctamente, y SI mesPedido que cosa tan rara...
  #6 (permalink)  
Antiguo 05/06/2009, 10:49
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Funciona en Firefox y no en Internet Explorer 6 y 7

Pongo también de donde obtengo dia y ano para que vean si pueden verle lógica...
Código HTML:
....
<select name="dia" id="dia">
                    <option <?php if ($_SESSION['dia']==1) echo "selected='selected'"?>>1</option>
....
Código HTML:
<select name="ano" id="ano" onchange="actualizarCalendario()">
                    <option <?php if ($_SESSION['ano']==2009) echo "selected='selected'"?>>2009</option>
....
  #7 (permalink)  
Antiguo 05/06/2009, 10:51
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Funciona en Firefox y no en Internet Explorer 6 y 7

CREO QUE YA LO SAQUÉ!!! EL MES ME LO DA CORRECTO POR EL CAMPO VALUE QUE PARA EL MES SI LO TENGO DECLARADO!!!
Código HTML:
<select name="mes" id="mes" onchange="actualizarCalendario()">
                    <option value="1" <?php if ($_SESSION['mes']==1) echo "selected='selected'"?>>Enero</option> 
  #8 (permalink)  
Antiguo 05/06/2009, 10:57
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Funciona en Firefox y no en Internet Explorer 6 y 7

Es interesante, Firefox toma al referir al campo option en Javascript si no tiene el valor value inicializado el valor seleccionado por el usuario, mientras que IE no funciona sino es especificando el valor que debe tener el mismo.

Muchas gracias D. el Grande, haces honor a tu nombre :)
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 17:45.