我正在使用jQuery Validation Plugin。我使用this post使用此插件验证我的日期。它工作但有一个问题。它也接受00/00/0000日期。如何通过修改以下功能使该日期无效。
$.validator.addMethod(
"australianDate",
function(value, element) {
return value.match(/^\d\d?\/\d\d?\/\d\d\d\d$/);
},
"Please enter a date in the format dd/mm/yyyy"
);
答案 0 :(得分:4)
这将确保数据格式正确并且也是有效日期。
$.validator.addMethod(
"australianDate",
function(value, element) {
var tokens = value.match(/^(\d{1,2})\/(\d{1,2})\/(\d{4})/);
if (tokens == null) {
return false;
}
var date = new Date(tokens[3], --tokens[2], tokens[1]);
return ! isNaN(date.getTime());
},
"Please enter a valid date in the format dd/mm/yyyy"
);
答案 1 :(得分:3)
你可以尝试:
function(value, element){
return /^\d{1,2}\/\d{1,2}\/\d{4}$/.test(value) &&
!isNaN(+new Date(value.split('/').reverse().join('/')));
}
答案 2 :(得分:2)
也许你可以试试这个,也许它可以起作用:)
function(value, element) {
if (!value.match(/^00\/00\/0000$/)) return value;
}