Foros del Web » Programando para Internet » Javascript »

problema con fechas

Estas en el tema de problema con fechas en el foro de Javascript en Foros del Web. hola miren encontre este codigo para compraracion de fechas funciona perfecto pero necesito adecuarlo a mi script q son tres campos select para año, mes ...
  #1 (permalink)  
Antiguo 05/02/2008, 14:54
 
Fecha de Ingreso: agosto-2004
Mensajes: 440
Antigüedad: 20 años, 4 meses
Puntos: 2
problema con fechas

hola miren encontre este codigo para compraracion de fechas funciona perfecto pero necesito adecuarlo a mi script q son tres campos select para año, mes y dia nose como arreglar esta cuestion

Código HTML:
<script language="javascript"> 
function comparar(){ 
var auxfec1=Date.parse(document.forms[0].fecha_desde.value); 
var auxfec2=Date.parse(document.forms[0].fecha_hasta.value); 

if (auxfec1<auxfec2){ 
alert('fecha2 mayor que fecha1'); 
} 
else 
alert('fecha1 mayor que fecha2'); 
} 
</script> 
</head> 
<body> 
Se debe llamar con de esta forma 
<form> 
DESDE<input type="text" name="fecha_desde" > MM/DD/YYYY<BR> 
HASTA<input type="text" name="fecha_hasta" > MM/DD/YYYY<BR> 
<input type="button" onclick="comparar();" VALUE="comparar" > 
</form> 
__________________
paty :adios:
  #2 (permalink)  
Antiguo 05/02/2008, 18:23
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 6 meses
Puntos: 88
Re: problema con fechas

aqui tienes una idea
Código HTML:
<script language="javascript"> 
function comparar(){
	with(document.forms[0]){
		var auxfec1=Date.parse(select1.value+'/'+select2.value+'/'+select3.value);
		var auxfec2=Date.parse(select4.value+'/'+select5.value+'/'+select6.value);
	}
	if (auxfec1<auxfec2){
		alert('fecha2 mayor que fecha1');
	}
	else if(auxfec1>auxfec2){
		alert('fecha1 mayor que fecha2');
	}
	else{
		alert('fecha1 es igual a fecha2');
	}
}
</script> 
saludos
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.

Última edición por eits; 06/02/2008 a las 18:35
  #3 (permalink)  
Antiguo 05/02/2008, 21:34
 
Fecha de Ingreso: agosto-2004
Mensajes: 440
Antigüedad: 20 años, 4 meses
Puntos: 2
Re: problema con fechas

mira este es mi codigo nose como aplicar lo q tu me dices a esto la verdad nose mucho de esto te agradezco tu ayuda...yo puse en tus select1.... el nombre de los miospero no se como ni en dondehacer el llamado a esa funcion
Código HTML:
<body>
<div align="center">
  <table width="630" border="0" class="contact">
    <tr>
      <td width="620"><form action="esp_its3.php" method="post">
          <table width="608" border="0" align="center" cellpadding="0" cellspacing="3">
            <tr>
              <td colspan="3"><div align="left"></div>

		      </td>
            </tr>
			
            <tr>
              <td width="134">&nbsp;</td>
              <td width="187">&nbsp;</td>
              <td width="243"><div align="center" class="its">
                  <div align="center">d/m/a</div>
              </div></td>
            </tr>
            <tr>
              <td valign="top" class="formu_txt_1">&nbsp;</td>
              <td valign="top" class="formu_txt_1"><p>Llegada</p></td>
              <td><div align="left"> <?php 

$an=date("Ye"); 
echo "A&ntilde;o:"; 
echo "<select name='an'>"; 
for($i=2008; $i<=2011; $i++){ 
    echo "<option value='".$i."' "; 
    if($an==$i){ 
        echo "selected"; 
    } 
    echo ">".$i."</option>"; 
} 
echo "</select>"; 

$me=date("ms"); 
echo "Mes:"; 
echo "<select name='me'>"; 
for($i=1; $i<=12; $i++){ 
    echo "<option value='".$i."' "; 
    if($me==$i){ 
        echo "selected"; 
    } 
    echo ">".$i."</option>"; 
} 
echo "</select>"; 

echo "Dia:"; 
echo "<select name='di'>"; 
$di=date("da"); 
for($i=1; $i<=31; $i++){ 
    echo "<option value='".$i."' "; 
    if($di==$i){ 
        echo "selected"; 
    } 
    echo ">".$i."</option>"; 
} 
echo "</select>"; 

?>
              </div></td>
            </tr>
            <tr>
              <td valign="top" class="formu_txt_1">&nbsp;</td>
              <td valign="top" class="formu_txt_1">Salida</td>
              <td><div align="left">
               <?php 
$ano=date("Y"); 
echo "A&ntilde;o:"; 
echo "<select name='ano'>"; 
for($i=2008; $i<=2011; $i++){ 
    echo "<option value='".$i."' "; 
    if($ano==$i){ 
        echo "selected"; 
    } 
    echo ">".$i."</option>"; 
} 
echo "</select>"; 

$mes=date("m"); 
echo "Mes:"; 
echo "<select name='mes'>"; 
for($i=1; $i<=12; $i++){ 
    echo "<option value='".$i."' "; 
    if($mes==$i){ 
        echo "selected"; 
    } 
    echo ">".$i."</option>"; 
} 
echo "</select>"; 

echo "Dia:"; 
echo "<select name='dia'>"; 
$dia=date("d"); 
for($i=1; $i<=31; $i++){ 
    echo "<option value='".$i."' "; 
    if($dia==$i){ 
        echo "selected"; 
    } 
    echo ">".$i."</option>"; 
} 
echo "</select>"; 


?>
              </div></td>
            </tr>
            <tr>
              <td colspan="3"><hr size='1' color='#D9ECFF' /></td>
            </tr>
          </table>
        <table width="608" border="0">
            <tr>
              <td><hr size='1' color='#D9ECFF' /></td>
            </tr>
            <tr>
              <td><div align="center"><span class="Estilo8">
                  <input name="enviar2" type="button" id="enviar2"  value="Siguiente" />
                  <input name="borrar2" type="reset" id="borrar2" value="Borrar" />
              </span></div></td>
            </tr>
          </table>
      </form></td>
    </tr>
  </table>
  <p>&nbsp;</p>
</div>
</body> 
__________________
paty :adios:

Última edición por niltza; 05/02/2008 a las 21:40
  #4 (permalink)  
Antiguo 06/02/2008, 15:38
 
Fecha de Ingreso: agosto-2004
Mensajes: 440
Antigüedad: 20 años, 4 meses
Puntos: 2
Re: problema con fechas

ayuda por favor ya he buscado mucho en todos lados y nada q encuentro necesito hacer esto para entregar mañana por la tarde ayuda please
__________________
paty :adios:
  #5 (permalink)  
Antiguo 06/02/2008, 18:27
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 6 meses
Puntos: 88
Re: problema con fechas

aqui te dejo un ejemplo, con el codigo que pusiste
Código PHP:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
<script language="javascript"> 
function comparar(){
    with(document.forms[0]){
        var auxfec1=Date.parse(an.value+'/'+me.value+'/'+di.value);
        var auxfec2=Date.parse(ano.value+'/'+mes.value+'/'+dia.value);
    }
    if (auxfec1<auxfec2){
        alert('fecha2 mayor que fecha1');
    }
    else if(auxfec1>auxfec2){
        alert('fecha1 mayor que fecha2');
    }
    else{
        alert('fecha1 es igual a fecha2');
    }
}
</script> 
</head>
<body>
<div align="center">
  <table width="630" border="0" class="contact">
    <tr>
      <td width="620"><form action="esp_its3.php" method="post">
          <table width="608" border="0" align="center" cellpadding="0" cellspacing="3">
            <tr>
              <td colspan="3"><div align="left"></div>

              </td>
            </tr>
            
            <tr>
              <td width="134">&nbsp;</td>
              <td width="187">&nbsp;</td>
              <td width="243"><div align="center" class="its">
                  <div align="center">d/m/a</div>
              </div></td>
            </tr>
            <tr>
              <td valign="top" class="formu_txt_1">&nbsp;</td>
              <td valign="top" class="formu_txt_1"><p>Llegada</p></td>
              <td><div align="left"> <?php 

$an
=date("Ye"); 
echo 
"A&ntilde;o:"
echo 
"<select name='an'>"
for(
$i=2008$i<=2011$i++){ 
    echo 
"<option value='".$i."' "
    if(
$an==$i){ 
        echo 
"selected"
    } 
    echo 
">".$i."</option>"

echo 
"</select>"

$me=date("ms"); 
echo 
"Mes:"
echo 
"<select name='me'>"
for(
$i=1$i<=12$i++){ 
    echo 
"<option value='".$i."' "
    if(
$me==$i){ 
        echo 
"selected"
    } 
    echo 
">".$i."</option>"

echo 
"</select>"

echo 
"Dia:"
echo 
"<select name='di'>"
$di=date("da"); 
for(
$i=1$i<=31$i++){ 
    echo 
"<option value='".$i."' "
    if(
$di==$i){ 
        echo 
"selected"
    } 
    echo 
">".$i."</option>"

echo 
"</select>"

?>
              </div></td>
            </tr>
            <tr>
              <td valign="top" class="formu_txt_1">&nbsp;</td>
              <td valign="top" class="formu_txt_1">Salida</td>
              <td><div align="left">
               <?php 
$ano
=date("Y"); 
echo 
"A&ntilde;o:"
echo 
"<select name='ano'>"
for(
$i=2008$i<=2011$i++){ 
    echo 
"<option value='".$i."' "
    if(
$ano==$i){ 
        echo 
"selected"
    } 
    echo 
">".$i."</option>"

echo 
"</select>"

$mes=date("m"); 
echo 
"Mes:"
echo 
"<select name='mes'>"
for(
$i=1$i<=12$i++){ 
    echo 
"<option value='".$i."' "
    if(
$mes==$i){ 
        echo 
"selected"
    } 
    echo 
">".$i."</option>"

echo 
"</select>"

echo 
"Dia:"
echo 
"<select name='dia'>"
$dia=date("d"); 
for(
$i=1$i<=31$i++){ 
    echo 
"<option value='".$i."' "
    if(
$dia==$i){ 
        echo 
"selected"
    } 
    echo 
">".$i."</option>"

echo 
"</select>"


?>
              </div></td>
            </tr>
            <tr>
              <td colspan="3"><hr size='1' color='#D9ECFF' /></td>
            </tr>
          </table>
        <table width="608" border="0">
            <tr>
              <td><hr size='1' color='#D9ECFF' /></td>
            </tr>
            <tr>
              <td><div align="center"><span class="Estilo8">
                  <input name="enviar2" type="button" id="enviar2"  value="Siguiente" onclick="comparar()" />
                  <input name="borrar2" type="reset" id="borrar2" value="Borrar" />
              </span></div></td>
            </tr>
          </table>
      </form></td>
    </tr>
  </table>
  <p>&nbsp;</p>
</div>
</body>
</html>
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.

Última edición por eits; 06/02/2008 a las 18:37
  #6 (permalink)  
Antiguo 06/02/2008, 19:16
 
Fecha de Ingreso: agosto-2004
Mensajes: 440
Antigüedad: 20 años, 4 meses
Puntos: 2
Re: problema con fechas

oye mil gracias funciono perfecto muchisismas gracias pero ahora tengo una pregunta.....como es un formulario el boton Siguiente debe ser submit comohago para q compare la fecha despues de salir el alert se quede en esa pagina y no siga a la otra pagina
__________________
paty :adios:

Última edición por niltza; 06/02/2008 a las 19:43
  #7 (permalink)  
Antiguo 07/02/2008, 09:33
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 6 meses
Puntos: 88
Re: problema con fechas

tienes que cambiar algunas cosas, al usar siguiente como submit quitas el onclick en <form> usas el onsubmit="return comparar()", en la función depues del alert pones return false y en la parte de si todo anda bien pones return true, con eso debe quedar.

saludos
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #8 (permalink)  
Antiguo 07/02/2008, 14:45
 
Fecha de Ingreso: agosto-2004
Mensajes: 440
Antigüedad: 20 años, 4 meses
Puntos: 2
Re: problema con fechas

hola tengo un problem en ese formulrio necesito validar lo de lasfechas y unos radio button,pero nose como sedebe hacerpara llamar las dos funciones
el sciptde las funciones es el q esta aqui en el foro y el de los radio si esunpoco mas largo aqui esta esa funcion. pero no tengo ni idea de como llamar a las dos funciones paraqeste las dos validaciones prefectas

Código HTML:
<script>
function send_form(current_form){ 
// guardamos el nombre de grupo de radios o el primer radio de un grupo sin seleccionar 
// para devolverle el foco 

var radio_group = "" 
var ok_form = 1 
    for(var ctr = 0 ; ctr < current_form.length; ctr++){ 
    // comprobamos que el campo es radio y que nombre de grupo de radio 
     if(current_form[ctr].type == "radio" && current_form[ctr].name != radio_group){ 
            //comprobamos si tiene marcado un radio en el grupo 
            if(check_radio(eval("current_form." + current_form[ctr].name))){ 
              // Si no tiene selecionado ningun radio rompemos el bucle 
              // y asignamos 0 a ok_form 
              ok_form-- 
              // guardamos el radio para asignar el foco 
              radio_group = current_form[ctr] 
              break 
            } 
            // Si hemos llegado aquí asignamos el nombre del grupo  
            // para buscar en el siguiente grupo 
            radio_group = current_form[ctr].name 
        } 
    } 
 if(ok_form){ 
    
     current_form.submit() 
 } 
 else{ 
   alert("Por favor, complete los datos.") 
   radio_group.focus() 
 } 
} 
// esta funcion comprueba el grupo  de radio 
function check_radio(radio_group){ 
  // comprobamos que en el grupo de radio haiga uno seleccionado 
  for(var ctr = 0 ; ctr < radio_group.length; ctr++){ 
    if(radio_group[ctr].checked){ 
     // Si hay uno selecionado 
         return false 
    } 
  } 
        // Si no hay ninguno seleccionado 
      return true 
} 
</script> 
__________________
paty :adios:
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 02:07.