自定义日期格式DD-MM-YYYY的Jquery表单验证

时间:2011-02-22 12:21:41

标签: jquery jquery-validate validation

我正在使用jquery-validate插件来验证我的表单。我有验证规则,如

var validator = $("#myform").validate({
rules: {
            Date: {
                required: true,,
          },
       },
});

如何使用标准日期格式DD-MM-YYYY ??

验证字段

提前感谢.. :))

blasteralfred

1 个答案:

答案 0 :(得分:0)

您应该能够在插件中使用“自定义方法”。你基本上调用你自己的JS函数来解析日期(使用你想要的任何东西,可能是regexp和JS日期检查),然后通过返回true / false或null的字符串来决定你的日期是否通过/失败用于传递或失败的错误消息。有关示例,请参阅“验证”插件。

要检查文本字符串日期的格式,请尝试使用正则表达式,例如:

var vDT="(([012]?[1-9])|10|20|30|31)[/](([0]?[1-9])|10|11|12)[/](19|20)?[0-9]{2}";
var regex = new RegExp(vDT);
return (regex.test(dateString));

正则表达式将检查“好”日期,但不是完美日期,例如:99/99/9999失败,31/03/2011通过,但31/02/2011也是如此。请注意,这可以接受2位数或19xx或20xx年,但您可能希望将此限制为4位数,因为您可能会发现自己在20世纪。

要从英国日期创建与JS兼容的美国日期,您需要执行以下操作:

var uk = '21/11/2011';
var uka = split(uk, '/');
var jsdate = new date(uka[2], uka[1]-1, uka[0])

然后检查你的jsdate是否有效......