如何指定要使用jQuery的Validation Plugin进行验证的自定义日期格式?
发布于 2009-02-04 13:59:40
您可以使用addMethod
函数创建自己的自定义验证方法。假设你想验证"dd/mm/yyyy":
$.validator.addMethod(
"australianDate",
function(value, element) {
// put your own logic here, this is just a (crappy) example
return value.match(/^\d\d?\/\d\d?\/\d\d\d\d$/);
},
"Please enter a date in the format dd/mm/yyyy."
);
然后在表单上添加:
$('#myForm')
.validate({
rules : {
myDate : {
australianDate : true
}
}
})
;
发布于 2009-02-04 14:49:48
nickf的回答很好,但请注意,验证插件已经在additional-methods.js s.js文件中包含了其他几种日期格式的验证器。在你写你自己的代码之前,确保别人还没有写过。
发布于 2011-01-27 10:59:38
我个人使用非常好的http://www.datejs.com/库。
文档来源:http://code.google.com/p/datejs/wiki/APIDocumentation
您可以使用以下内容获取澳大利亚格式,并将验证闰日29/02/2012而不是29/02/2011:
jQuery.validator.addMethod("australianDate", function(value, element) {
return Date.parseExact(value, "d/M/yyyy");
});
$("#myForm").validate({
rules : {
birth_date : { australianDate : true }
}
});
我还使用屏蔽输入插件来标准化数据http://digitalbush.com/projects/masked-input-plugin/
$("#birth_date").mask("99/99/9999");
https://stackoverflow.com/questions/511439
复制相似问题