我已经使用jQuery设置了HTML表单的验证,我正在寻找有关电话号码验证的一些帮助,我一直在网上搜索,这里是我想出来但它仍然无法正常工作!我有电子邮件和名称输入验证,但无法正确理解如何正确实施电话号码验证,因为我提交时仍然接受信件?我需要输入只接受最多15个数字,如果需要,还要在开始时接受+号?
我使用的regEx是:/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+。[ - zA-Z] {2,4} $ /并且我知道这不正确但我甚至无法让它工作?
如何解决此问题的任何输入都非常感谢!
$('#submit_second').click(function(){
//remove classes
$('#second_step input').removeClass('error').removeClass('valid');
var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
var phonePattern = /^[0-9]{3}\-[0-9]{7}$/ ;
var fields = $('#second_step input[type=text]');
var error = 0;
fields.each(function(){
var value = $(this).val();
if( value.length<1 || value==field_values[$(this).attr('id')] || ( $(this).attr('id')=='email' && !emailPattern.test(value) ) ) {
$(this).addClass('error');
$(this).effect("shake", { times:3 }, 50);
error++;
} else {
$(this).addClass('valid');
}
if( value.length<1 || value==field_values[$(this).attr('id')] || ( $(this).attr('id')=='phone' && !phonePattern.test(value) ) ) {
$(this).addClass('error');
$(this).effect("shake", { times:3 }, 50);
error++;
} else {
$(this).addClass('valid');
}
});
答案 0 :(得分:2)
这应该这样做:
/^\+?[0-9]{0,15}$/
最多匹配15个数字,可选择以+