Foros del Web » Programando para Internet » Javascript »

validar dos horas

Estas en el tema de validar dos horas en el foro de Javascript en Foros del Web. Buenas tardes. tengo un input "diaSalida" y otro input "diaRegreso", uno de "horaSalida" y otro de "horaRegreso", y un botón de Validar. Tengo una función ...
  #1 (permalink)  
Antiguo 18/08/2008, 04:45
 
Fecha de Ingreso: agosto-2008
Mensajes: 9
Antigüedad: 15 años, 9 meses
Puntos: 0
validar dos horas

Buenas tardes.

tengo un input "diaSalida" y otro input "diaRegreso", uno de "horaSalida" y otro de "horaRegreso", y un botón de Validar. Tengo una función javascript que valida que diaRegreso sea mayor que diaSalida, pero ahora se me da el caso que, si diaSalida = diaRegreso, tengo que validar que horaRegreso sea superior a horaSalida, y no hay manera de conseguirlo.

alguna ayuda??

gracias!!
  #2 (permalink)  
Antiguo 18/08/2008, 05:10
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 7 meses
Puntos: 45
Respuesta: validar dos horas

Hola korbenmad2004:

He visto que también has tenido la duda de comparar fechas.

Creo que el método más sencillo para validar fechas es crear un objeto Date() por cada fecha que quieras comparar. Luego la comparación es directa (o comparas usando getTime(), lo mismo da).

Si lo haces así no tendrás que preocuparte de si la fecha de regreso es más tarde que la de salida, o si la hora hay que compararla o no... Será tan fácil como construir los dos objetos y compararlos.

He visto que has utilizado Date.parse(diaSalida.value). Es algo incómodo ya que parse() recibe como parámetro una cadena con el siguiente formato:
Mon, 25 Dec 1995 13:30:00 GMT+0430

Lo mejor es desglosar en año, mes, dia, hora, minuto y segundo para pasárselo al constructor Date().

Código PHP:
function validar() {
  
// salida
  
var anioSalida __mesSalida __diaSalida __horaSalida __minutoSalida __segundoSalida __;
  var 
dateSalida = new DateanioSalidamesSalida-1diaSalidahoraSalidaminutoSalidasegundoSalida);
  
// regreso
  
var anioRegreso __mesRegreso __diaRegreso __horaRegreso __minutoRegreso __segundoRegreso __;
  var 
dateRegreso = new DateanioRegresomesRegreso-1diaRegresohoraRegresominutoRegresosegundoRegreso);
  
// comparación
  
if( dateSalida >= dateRegreso )
     
alert("MAL");
  else
     
alert("BIEN");


Inténtalo así, pero tendrás que rellenar las variables. Hay muchos mensajes de este tipo si tienes dudas.

Saludos.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #3 (permalink)  
Antiguo 18/08/2008, 05:23
 
Fecha de Ingreso: agosto-2008
Mensajes: 9
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: validar dos horas

hola derkenuke!!

gracias por tu respuesta!! El problema es que mi web necesita tener 4 inputs (2 para las horas (salida/regreso) y otros 2 para las fechas(salida/regreso)), por lo que no se si puedo constrir un objeto date ya que los datos se introducen por separado.
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 22:25.