Autor Tema: funcion validar fecha con jscript  (Leído 2153 veces)

0 Usuarios y 1 Visitante están viendo este tema.

eeraul

  • Visitante
funcion validar fecha con jscript
« : marzo 28, 2007, 02:07:27 pm »
hey compadres de mucho conocimiento alguien conoce algun script para validar la fecha donde le paso los tres parametros
si alguien sabe favor contesteme que necesito utilizar lo please gracias.....

fapasv

  • Visitante
Re: funcion validar fecha con jscript
« Respuesta #1 : mayo 11, 2007, 01:13:17 pm »
Hey para validar fechas con jscript yo utilizo el siguiente grupo d formulas:

Código: [Seleccionar]
function esDigito(sChr){
var sCod = sChr.charCodeAt(0);
return ((sCod > 47) && (sCod < 58));
}
function valSep(oTxt){// eseto valida tu separador de fecha
var bOk = false;
bOk = bOk || ((oTxt.value.charAt(2) == "/") && (oTxt.value.charAt(5) == "/"));
return bOk;
}
function finMes(oTxt){
var nMes = parseInt(oTxt.value.substr(3, 2), 10);
var nRes = 0;
switch (nMes){
case 1: nRes = 31; break;
case 2: nRes = 29; break;
case 3: nRes = 31; break;
case 4: nRes = 30; break;
case 5: nRes = 31; break;
case 6: nRes = 30; break;
case 7: nRes = 31; break;
case 8: nRes = 31; break;
case 9: nRes = 30; break;
case 10: nRes = 31; break;
case 11: nRes = 30; break;
case 12: nRes = 31; break;
}
return nRes;
}
function valDia(oTxt){
var bOk = false;
var nDia = parseInt(oTxt.value.substr(0, 2), 10);
bOk = bOk || ((nDia >= 1) && (nDia <= finMes(oTxt)));
return bOk;
}
function valMes(oTxt){
var bOk = false;
var nMes = parseInt(oTxt.value.substr(3, 2), 10);
bOk = bOk || ((nMes >= 1) && (nMes <= 12));
return bOk;
}
function valAno(oTxt){
var bOk = true;
var nAno = oTxt.value.substr(6);
bOk = bOk && ((nAno.length == 2) || (nAno.length == 4));
if (bOk){
for (var i = 0; i < nAno.length; i++){
bOk = bOk && esDigito(nAno.charAt(i));
}
}
return bOk;
}
function valFecha(oTxt){
var bOk = true;
if (oTxt.value != ""){
bOk = bOk && (valAno(oTxt));
bOk = bOk && (valMes(oTxt));
bOk = bOk && (valDia(oTxt));
bOk = bOk && (valSep(oTxt));
if (!bOk){bOk.value='';}
return bOk;
}
}
Como ves son varias y eso es bueno porque las podes manejar como queras, eso si, para mi es mas comodo utilizar un campo de texto con valor dd/mm/aaaa ya que ese argumento lo podes partir utilizando como separador '/'  :p

la forma de emplearla nada del otro mundo en algun evento on(submit, blur... etc) pones en tu script y suponiendo q tu campo se llame fecha
Código: [Seleccionar]
if(fecha.value !='' && !valFecha(fecha.value)){alert("el formato de fecha debe ser: dd/mm/aaaa");
donde valFecha llama a todas las demas funciones... claro puede q encontres alguna mucho mejor si googleas x ahi.