我正在使用jquery validate插件。尝试使用手机号码正则表达式验证时,它不起作用。谁能帮助我。
$(document).ready(function() {
$.validator.addMethod(
"regex",
function(value, element, regexp) {
var check = false;
var re = new RegExp(regexp);
return this.optional(element) || re.test(value);
},""
);
});
$("#membership_form").validate({
rules: {
"data[mobile]": {
required: true,
number: true,
regex: '/^\2547\d{8}/'
},
},
messages: {
"data[mobile]": {
required: 'Phone number is required',
regex:'Please match the pattern'
},
},
});
答案 0 :(得分:0)
尝试一下
我唯一看到的怀疑是validate方法中的名称。看来您正在尝试使用错误的名称验证为data[mobile]
。
$.validator.addMethod( "regex", function(value, element, regexp) { var check = false; var re = new RegExp(regexp); return this.optional(element) || re.test(value); },"");
$("#membership_form").validate({
rules: {
"Mobile": {
required: true,
number: true,
regex: '/^\2547\d{8}/'
},
},
messages: {
"Mobile": {
required: 'Phone number is required',
regex:'Please match the pattern'
},
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.17.0/jquery.validate.min.js"></script>
<form id="membership_form">
<input name="Mobile" type="text"/>
<input type="submit"/>
</form>