jq.validate 自定义验证两个日期

jq.validate 自定义验证两个日期

    首先定义有一个表单,date1和date2是属于表单的元素,若date1大于date2,返回false:若date1<date2,返回true。使用jq.validate中的validator.addMethod()自定义验证。

    具体方法如下:

 1 jQuery.validator.addMethod("dateCheck", function() {
 2 
 3     var date1= $("# date1").val();
 4     var startLogTimeDate = new Date(Date.parse(date1.replace(/-/g, "/"))).getTime();
 5     var date2=  $("# date2").val();
 6     var endLogTimeDate = new Date(Date.parse(date2.replace(/-/g, "/"))).getTime();
 7     if(endLogTimeDate>startLogTimeDate){
 8         return false;
 9     }else{
10         return true;
11     }
12 }, "比较两个时间");

    定义完方法之后,对于用户输入的值进行验证:

 1 $("获取表单id ").validate({
 2     rules: {
 3         date1: {
 4             required: true,
 5             dateISO:true
 6         },
 7         date2: {
 8             required: true,
 9             dateISO:true,
10             dateCheck:true
11         },
12         
13     },
14     messages: {
15         date1: {
16             required: '请输入日期',
17             dateISO:'请输入正确格式的日期'
18         },
19         date2: {
20             required: '请输入日期',
21             dateISO:'请输入正确格式的日期',
22             dateCheck:' date1日期应大于date2日期'
23         },
24        
25     },
26     submitHandler : function(form) {
27         $(form).ajaxSubmit({
28             success : function() {
29                 //前端校验完成提交数据库
30                 onSubmit($(form));
31             }
32         });
33     },
34     errorPlacement : function(error, element) {
35         $('button[name="saveButton"]').button('reset');
36         error.insertAfter(element.parent());
37     }
38 });
原文地址:https://www.cnblogs.com/DonaHero/p/6211515.html