日期校验
function isdate(str){
var strSeparator = "-"; //日期分隔符
var strDateArray;
var intYear;
var intMonth;
var intDay;
var boolLeapYear;
var strDate;
strDate=str;
strDateArray = strDate.split(strSeparator); //以“-”为分隔符提取年月日
if(strDateArray.length!=3) {
alert("您输入的日期错误");
return "false";
}
intYear = parseInt(strDateArray[0],10);
intMonth = parseInt(strDateArray[1],10);
intDay = parseInt(strDateArray[2],10);
if(isNaN(intYear)||isNaN(intMonth)||isNaN(intDay)) {
alert("您输入的日期错误");
return "false";}
if(intMonth>12||intMonth<1){
alert("日期错误,月份必须为0到12之间的一个数");
return "false";}
if((intMonth==1||intMonth==3||intMonth==5||intMonth==7||intMonth==8||intMonth==10||intMonth==12)&&(intDay>31||intDay<1)){
alert("日期错误,您输入月份的相应日份必须为1—31之间");
return "false";
}
if((intMonth==4||intMonth==6||intMonth==9||intMonth==11)&&(intDay>30||intDay<1)) {
alert("日期错误,您输入月份的相应日份必须为1—30之间");
return "false";}
if(intMonth==2){
if(intDay<1) {
alert("日期错误,月份不能为零或空值");
return "false";}
boolLeapYear = false;
if((intYear%400==0)||(intYear%4==0 && intYear%100!=0)) //判断闰年
boolLeapYear = true;
else
boolLeapYear = false; //平年
if(boolLeapYear){
if(intDay>29) {
alert("日期错误,闰年2月份的日份必须在1—29之间");
return "false";}
}
else{
if(intDay>28) {
alert("日期错误,2月份的日份必须在1—28之间");
return "false";}
}
}
return "true";
}
日期比较
var rukua,rukub,rukuc,sca,scb,scc,fir,sec;
fir=document.form1.produce_date.value.split("-");
sec=document.form1.stock_in_date.value.split("-");
rukua=parseInt(sec[0]);
rukub=parseInt(sec[1]);
rukuc=parseInt(sec[2]);
sca=parseInt(fir[0]);
scb=parseInt(fir[1]);
scc=parseInt(fir[2]);
if(sca>rukua){
alert("入库日期不能小于生产日期");
document.form1.stock_in_date.focus();
return false;
}
if(sca==rukua && scb>rukub){
alert("入库日期不能小于生产日期");
document.form1.stock_in_date.focus();
return false;
}
if(sca==rukua && scb==rukub && scc>rukuc){
alert("入库日期不能小于生产日期");
document.form1.stock_in_date.focus();
return false;
}