Foros del Web » Programando para Internet » Javascript »

validar en java script y cambiar de formato dd mm aaa para aaa mm dd

Estas en el tema de validar en java script y cambiar de formato dd mm aaa para aaa mm dd en el foro de Javascript en Foros del Web. buenos dias tengo un problema con este codigo me valida perfectamente dos fechas y la primera no puede ser mayor a la segunda pero en ...
  #1 (permalink)  
Antiguo 12/01/2012, 08:16
 
Fecha de Ingreso: noviembre-2011
Mensajes: 3
Antigüedad: 12 años, 5 meses
Puntos: 0
Pregunta validar en java script y cambiar de formato dd mm aaa para aaa mm dd

buenos dias tengo un problema con este codigo me valida perfectamente dos fechas y la primera no puede ser mayor a la segunda pero en formato dd mm aaa y la necesito en formato aaa mm dd






<script language="JavaScript">

function esDigito(sChr){
var sCod = sChr.charCodeAt(0);
return ((sCod > 47) && (sCod < 58));
}

function valSep(oTxt){
var bOk = false;
bOk = bOk || ((oTxt.value.charAt(2) == "-") && (oTxt.value.charAt(5) == "-"));
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 nAno = parseInt(oTxt.value.substr(6), 10);
var nRes = 0;
switch (nMes){
case 1: nRes = 31; break;
case 2: nRes = 28; 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 + (((nMes == 2) && (nAno % 4) == 0)? 1: 0);
}

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));
return bOk;
}
}

function fechaMayorOIgualQue(fechaprestamo, fechadevolucion){
var bRes = false;
var sDia0 = fechaprestamo.value.substr(0, 2);
var sMes0 = fechaprestamo.value.substr(3, 2);
var sAno0 = fechaprestamo.value.substr(6, 4);
var sDia1 = fechadevolucion.value.substr(0, 2);
var sMes1 = fechadevolucion.value.substr(3, 2);
var sAno1 = fechadevolucion.value.substr(6, 4);
if (sAno0 > sAno1) bRes = true;
else {
if (sAno0 == sAno1){
if (sMes0 > sMes1) bRes = true;
else {
if (sMes0 == sMes1)
if (sDia0 >= sDia1) bRes = true;
}
}
}
return bRes;
}

function valFechas(){
var bOk = false;
if (valFecha(document.f1.fechaprestamo)){
if (valFecha(document.f1.fechadevolucion)){
if (fechaMayorOIgualQue(document.f1.fechadevolucion, document.f1.fechaprestamo)){
bOk = true;
alert("Ok");
} else {
alert("Rango inválido");
document.f1.fechadevolucion.focus();
return false
}
} else {
alert("Fecha inválida");
document.f1.fechadevolucion.focus();
}
} else {
alert("Fecha inválida");
document.f1.fechaprestamo.focus();

return false
}
return true
function normalize_date($date){
if(!empty($date)){ $var = explode(’/',str_replace(’-',’/',$date));
return "$var[2]/$var[1]/$var[0]"; } }
}

</script>


<Form onsubmit="return valFechas()" NAME ="f1" METHOD="POST" ACTION="guardarequiposprestados.php">

Etiquetas: formato, java, php
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:01.