JS日期校验
要求: 为4、6、8位数字。年为4位、月为2位、日为2位
要求: 为4、6、8位数字。年为4位、月为2位、日为2位
var rq = $("#RQ").val();
if(!isNaN(rq)){
if(rq.length==6){
//$("#RQ").val(rq+"01");
var year = Number(rq.substr(0,4));
var month = Number(rq.substr(4,2));
if(month === 0 || month > 12){
alert("请输入正确的格式,可输入四位、六位、八位,月份要小于等于12!");
$("#RQ").val(rq.substr(0,4));
}
}else if(rq.length==4){
//$("#RQ").val(rq+"0101");
}else if(rq.length==8){
var year = Number(rq.substr(0,4));
var month = Number(rq.substr(4,2));
var date = Number(rq.substr(6,2));
if(month > 12){
alert("请输入正确的格式,可输入四位、六位、八位,月份要小于等于12!");
$("#RQ").val(rq.substr(0,4));
}
if(month == 0){
alert("请输入正确的格式,可输入四位、六位、八位,月份不能为00!");
$("#RQ").val(rq.substr(0,4));
}
if(date == 0){
alert("请输入正确的格式,可输入四位、六位、八位,日期不能为00!");
$("#RQ").val(rq.substr(0,6));
}
//大月天数不大于31
if((month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)&& (date > 31)){
alert("请输入正确的格式,可输入四位、六位、八位,大月日期要小于等于31!");
$("#RQ").val(rq.substr(0,6));
}
//小月天数不大于30
if((month == 4 || month == 6 || month == 9 || month == 11)&& (date > 30)){
alert("请输入正确的格式,可输入四位、六位、八位,小月日期要小于等于30!");
$("#RQ").val(rq.substr(0,6));
}
//二月特殊处理
if(month == 2){
if(((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) && (date > 29)){
alert("请输入正确的格式,可输入四位、六位、八位,闰年二月日期要小于等于29!");
$("#RQ").val(rq.substr(0,6));
}else if(date > 28){
alert("请输入正确的格式,可输入四位、六位、八位,二月日期要小于等于28!");
$("#RQ").val(rq.substr(0,6));
}
}
}else{
alert("请输入正确的格式,可输入四位,六位,八位.!");
}
}else{
alert("请输入正确的格式,必须为日期!");
}