0

我正在使用 jQuery 验证插件 ( http://jqueryvalidation.org ) 进行信用卡验证。我怎样才能让他们使用这个插件以 mm/yyyy 格式准确地输入日期?

jQuery.validator.setDefaults({
  debug: true,
  success: "valid"
});
$('form[name="submit_cc"]').validate({
  rules: {
    holder_name: {
      required: true,

    },
      cardnumber: {
      required: true,
      creditcard: true
    }


  }
});

谢谢你的回答。

4

3 回答 3

2

谢谢拉利特的回答,它有效。

jQuery.validator.setDefaults({
      debug: true,
      success: "valid"
    });
    jQuery.validator.addMethod(
            "trioDate",
            function(value, element) {
                return value.match(/^\d{1,2}\/\d{4}$/);
            },
            "Please enter a date in the format mm/yyyy"
        );

    $('form[name="cc_frm"]').validate({
      rules: {
      dob: {
                        required : true,
                        trioDate:true
                    },
        CardNumber: {
          required: true,
          creditcard: true
        },

         CardType: {

          required:  true
        }

      },


    });
于 2013-10-21T12:44:42.080 回答
0

您可以使用 addMethod 函数创建自己的自定义验证方法。假设你想验证 "mm/yyyy": "Date", function(value, element) { // 把你自己的逻辑放在这里,这只是一个(糟糕的)例子 return value.match(/^\d\d? /\d\d\d\d$/); }, "请输入格式为 mm/yyyy 的日期。" ); 并在您的表单中 $('#myForm') .validate({ rules : { myDate : { Date : true } } }) ;

于 2013-10-21T11:56:25.203 回答
0

5 月对于验证月份是一个月还是一年是很重要的。我对正则表达式模式进行了一些更改以提供帮助。

$.validator.addMethod('cardexpiry', function( value, element ) {
  return value.match("(0[123456789]|10|11|12)([/])([1-2][0-9][0-9][0-9])");
}, "Precisa ser no formato mm/aaaa" );

2020 年的更新

$.validator.addMethod('cardexpiry', function( value, element ) {
  return value.match("(0[123456789]|10|11|12)([/])([2][0][2|3][0-9])");
}, "Parece que tem algo errado"   );
于 2019-05-31T21:19:12.660 回答