Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/01/2012, 08:16
transvalcar_01
 
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">