项目中频频用到日期格式的验证,前段时间在网上发现了一个很好的代码,我在此基础上做了少许的改进,特将此保留到我的BLOG中。。。
js代码片段:
/*
*validate date(include bissextile)
*format: dd-mm-yyyy
*add by tony
*/
function isValidDate(sText) {
//yyyy-MM-dd
//var reDate = /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29))$/
//dd-mm-yyyy
var reDate = /^(((0?[1-9]|[12]\d|3[01])-(0?[13578]|1[02])-((1[6-9]|[2-9]\d)\d{2}))|((0?[1-9]|[12]\d|30)-(0?[13456789]|1[012])-((1[6-9]|[2-9]\d)\d{2}))|((0?[1-9]|1\d|2[0-8])-0?2-((1[6-9]|[2-9]\d)\d{2}))|(29-0?2-((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))))$/
return reDate.test(sText);
}
页面调用片段:
function validateDate(){
var begin = trim(document.getElementById("beginDate").value);
if( begin != ""){
if(isValidDate(begin) == false){
alert("==========");
return false;
}
}
}
js代码片段:
/*
*validate date(include bissextile)
*format: dd-mm-yyyy
*add by tony
*/
function isValidDate(sText) {
//yyyy-MM-dd
//var reDate = /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29))$/
//dd-mm-yyyy
var reDate = /^(((0?[1-9]|[12]\d|3[01])-(0?[13578]|1[02])-((1[6-9]|[2-9]\d)\d{2}))|((0?[1-9]|[12]\d|30)-(0?[13456789]|1[012])-((1[6-9]|[2-9]\d)\d{2}))|((0?[1-9]|1\d|2[0-8])-0?2-((1[6-9]|[2-9]\d)\d{2}))|(29-0?2-((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))))$/
return reDate.test(sText);
}
页面调用片段:
function validateDate(){
var begin = trim(document.getElementById("beginDate").value);
if( begin != ""){
if(isValidDate(begin) == false){
alert("==========");
return false;
}
}
}