0

我使用 jquery 验证插件来验证我的表单,但在一个文本框中我想验证我们国家的 NIC(国民身份证)号码。我得到了 NIC 号码的正则表达式,谁能告诉我如何添加其他方法来验证这个.

NIC 编号的正则表达式:/^[0-9]{9}[vVxX]$/ 文本框 id:showNic

这是我的jQuery代码...

$(document).ready(function () {
    jQuery.validator.setDefaults({
        // where to display the error relative to the element
        errorPlacement: function (error, element) {
            error.appendTo(element.parent().find('div.myErrors'));
        }
    });
    $('#basicDetails').validate({ // initialize the Plugin
        rules: {
            fname: {
                required: true,
                lettersonly: true,
            },
            lname: {
                required: true,
                lettersonly: true,
            },
        },
        messages: {
            fname: {
                required: "Please enter your first name",
                lettersonly: "Login format not valid",
            },
            lname: {
                required: "Please enter your last name",
                lettersonly: "Login format not valid",
            },
        },
        submitHandler: function (form) { // for demo
            alert('valid form submitted'); // for demo
            return false; // for demo
        }
    });
});
4

2 回答 2

2

你必须添加方法

$.validator.addMethod('NICNumber', function (value) { 
    return  /^[0-9]{9}[vVxX]$/.test(value); 
}, 'Please enter a valid National Identity Card Number.');

然后你会添加到你的规则:

showNic: {
      required: true,
      NICNumber: true
},
于 2016-11-07T10:32:16.023 回答
0

JavaScript 解决方案

var cnic_no = '922781800x',
cnic_no_regex = /^[0-9+]{9}[vVxX]{1}$/;

if(cnic_no_regex.test(cnic_no)) 
{
    alert('Right');
}
else 
{
    alert('Wrong');
}
于 2017-12-02T05:34:37.203 回答