简体   繁体   English

付款jQuery插件验证日期月份

[英]Payment jQuery plugin validate date month

I have jQuery plugin to validate credit card I want to to use separate fields to validate month and year I did year but I dont know to fix month 我有jQuery插件来验证信用卡,我想使用单独的字段来验证我做过的月份和年份,但是我不知道要修复月份

$.payment.validateCardMonthExpiry = function(month) {        
    var currentTime, expiry, _ref;
    if (typeof month === 'object' && 'month' in month) {
       _ref = month,
       month = _ref.month;
    }
    if (!(month)) {
       return false;
    }
    month = $.trim(month);
    if (!/^\d+$/.test(month)) {
       return false;
    }
    if (!(parseInt(month, 10) <= 12)) {
       return false;
    }
    expiry = new Date(month);
    currentTime = new Date;
    expiry.setMonth(expiry.getMonth() - 1);
    expiry.setMonth(expiry.getMonth() + 1, 1);
    return expiry > currentTime;
};

then I've 然后我

$('#month-holder').toggleClass('invalid',
!$.payment.validateCardMonthExpiry($('#month-holder').val()));

and my field wont validate I mean is always not valid 我的领域不会验证,我的意思是总是无效的

<input type="text" name="month-holder" id="month-holder" 
class="input-txt width-65 cc-exp-mm" placeholder="MM" 
maxlength="2" pattern="\d*" x-autocompletetype="cc-exp-mm" required>
$.payment.validateCardMonthExpiry = function(month) {
var currentTime, expiry;
if (!month) {
        return false;
}
onth = $.trim(month);
if (!/^\d+$/.test(month)) {
        return false;
}
if (!(parseInt(month, 10) <= 12)) {
        return false;
}
expiry = new Date(month);
   currentTime = (new Date).getMonth() + 1;
   return expiry > currentTime;
};

This the answer 这个答案

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM