Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/11/2007, 05:14
pakemon
 
Fecha de Ingreso: noviembre-2007
Mensajes: 6
Antigüedad: 16 años, 6 meses
Puntos: 0
Me podeis ayudar con un formulario??

Hola a todos,estoy introduciendome en el lenguaje javascript y tengo una serie de dudas.Os las comento:
Yo tengo un formulario,que tiene el titulo del viaje,fecha de inicio y una fecha de fin,tengo que chequear que el campo titulo dle viaje no esté vacio,y tengo que comprobar que las fechas de inicio y fechas de fin seán validas,y tambien comprobar que la fecha de inicio sea menor que la fecha de fin.
Todo eso está muy bien.os voy a dejar código para que veais lo que yo he echo:

implementacion del formulario:

<form name="formuviaje" action="guardaViaje.jsp" method="get" onsubmit="return ValidaFormViaje(formuviaje)">
TITULO DEL VIAJE: <input type="text" name="titulo" /><br/><br/>
FECHA DE INICIO: <input type="text" name="diaini" size="2" maxlength="2" />&nbsp;&nbsp;
<input type="text" name="mesini" size="2" maxlength="2" />&nbsp;&nbsp;
<input type="text" name="anyoini" size="4" maxlength="4" />
<br/><br/>

FECHA FIN: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;
<input type="text" name="diafin" size="2" maxlength="2" />&nbsp;&nbsp;
<input type="text" name="mesfin" size="2" maxlength="2" />&nbsp;&nbsp;
<input type="text" name="anyofin" size="4" maxlength="4" />
<br/><br/>


ahora la funcion de comprobar que el campo titulo del viaje.la tengo echa.
La funcion ValidarFecha,la tengo echa.le paso como parámetro el formulario.

function ValidarFecha(formulario){

var fecha=false;

//controlamos la fecha
if ((formulario.dia.value=="")|| (formulario.mes.value=="")||
(formulario.anyo.value==""))
{
alert("fecha incorrecta");

}
else
{
//si el mes es de 31 dias
if (((formulario.dia.value>=1)&&(formulario.dia.value <=31))&&
((formulario.mes.value==1)||(formulario.mes.value= =3)||
(formulario.mes.value==5)||(formulario.mes.value== 7)||
(formulario.mes.value==8)||(formulario.mes.value== 10)||
(formulario.mes.value==12)))

{
alert("fecha correcta")
fecha=true;
}
else
{
if(((formulario.dia.value>=1)&&(formulario.dia.val ue<=30))&&
((formulario.mes.value==4)||(formulario.mes.value= =6)||
(formulario.mes.value==9)||(formulario.mes.value== 11)))
{
alert("fecha correcta")
fecha=true;
}

else
{
if((formulario.dia.value>=1)&&(formulario.dia.valu e<=29)&&
(formulario.mes.value==2)&&((formulario.anyo.value %4==0)
/*(formulario.anyo.value % 400==0)*/))
{
alert("fecha correcta")
fecha=true;
}
else
{
if((formulario.dia.value>=1)&&(formulario.dia.valu e<=28)&&
(formulario.mes.value==2))
{
alert("fecha correcta")
fecha=true;
}
else
alert("fecha incorrecta");


}
}


}


}


return fecha;
}

------------------------------------------------------------------------------------------------------
Vale..todo eso esta muy bien..pero ahora yo para hacer todo más esquemático,quiero validar tanto la fecha fin como la fecha de inicio por separado,lo del nombre del campo y compruebo que la fecha de inicio sea menor que la fecha de fin.(que esa funcion ya la tengo echa)
Es la siguiente


function ValidaFormViaje(formuviaje)

{

//Inicialmente suponemos que todo esta OK
var resultado = false;
var nombre=false;
var fecha=false;
var fecha2=false;
var retorno=false;

nombre=CompruebaTitulo(formuviaje);
fecha=ValidarFecha(formuviaje);
fecha2=ValidarFecha(formuviaje);
retorno=InicioFin(formuviaje);
//ahora en esta parte compruebo que la fecha de inicio sea menor que la fecha de fin


//document.write(retorno);


//compruebo validez de formulario
if((nombre==true)/*&&(fecha==true)&&(fecha2==true)*/&&(retorno==true))
{
resultado=true;
}

//document.write(resultado);

return(resultado)


}
Pero no me sale.porque claro en ValidarFecha ,solo meto como parámetro formulario, y yo quiero que me valga la misma funcion para todo,entonces tengo que meter los campos del formulario como parámetros....

AHI ES DONDE QUERÍA LLEGAR YO?

COMO LO HAGO?? ESPERO ME HAYAIS ENTENDIDO Y CONTESTEIS A MI MENSAJE.MUCHAS GRACIAS