电话号码的jquery验证
下面是我当前的代码。我需要确保它总是有十位数的完整电话号码。有人有正确的正则表达式代码吗?“美国数字”电话号码的jquery验证,jquery,validation,phone-number,Jquery,Validation,Phone Number,下面是我当前的代码。我需要确保它总是有十位数的完整电话号码。有人有正确的正则表达式代码吗?“美国数字” $(文档).ready(函数(){ jQuery.validator.addMethod(“phoneUS”,函数(phone\u编号,元素){ 电话号码=电话号码。替换(/\s+/g,“”); 返回此。可选(元素)| |电话号码。长度>9&& 电话号码。匹配(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/); },“请指定有
$(文档).ready(函数(){
jQuery.validator.addMethod(“phoneUS”,函数(phone\u编号,元素){
电话号码=电话号码。替换(/\s+/g,“”);
返回此。可选(元素)| |电话号码。长度>9&&
电话号码。匹配(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
},“请指定有效的电话号码”);
$(“#myform”)。验证({
规则:{
字段:{
要求:正确,
真的吗
}
}
});
});
请参阅:以获取更全面的答案。但是,我认为这就是你想要的正则表达式:
^(?:(?:\+?1\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:#|x\.?|ext\.?|extension)\s*(\d+))?$
你好像忘了问问题。它只接受1个数字。因此,只要有人填写表格并输入一位数字,他们就可以继续前进。我想确保他们输入完整的10位美国电话号码。
<script>
$(document).ready(function(){
jQuery.validator.addMethod("phoneUS", function(phone_number, element) {
phone_number = phone_number.replace(/\s+/g, "");
return this.optional(element) || phone_number.length > 9 &&
phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
}, "Please specify a valid phone number");
$("#myform").validate({
rules: {
field: {
required: true,
phoneUS: true
}
}
});
});
</script>
^(?:(?:\+?1\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:#|x\.?|ext\.?|extension)\s*(\d+))?$