用于国际电话号码验证的jquery插件

kxh*_*tiz 5 validation jquery jquery-validate phone-number

你们能为美国和国际号码的jQuery建议一个好的电话号码验证插件吗?我用Google搜索了很多,但找不到一个效果很好的.

如果有实时验证会很好(即:当用户在输入字段中输入电话号码时它会立即验证)

cwd*_*cwd 11

我建议使用jQuery Validate,然后使用下面的代码扩展功能,我在这篇博文中找到了.

它提供了一个很好的代码片段(在评论中会更好),您可以将其用于国际号码以及美国电话号码.我已经在使用additional methods插件了,所以我intlphone在jQuery之后和document.ready/ validation设置之前重命名了方法,然后将代码重命名为我的网页:

    jQuery.validator.addMethod('intlphone', function(value) { return (value.match(/^((\+)?[1-9]{1,2})?([-\s\.])?((\(\d{1,4}\))|\d{1,4})(([-\s\.])?[0-9]{1,12}){1,2}(\s*(ext|x)\s*\.?:?\s*([0-9]+))?$/)); }, 'Please enter a valid phone number');
Run Code Online (Sandbox Code Playgroud)

在输入字段中,我想成为一个电话号码,我将类设置intlphone为最小长度添加HTML5属性/属性(虽然这也可以通过在设置验证时指定验证规则来完成),所以我的输入是喜欢:

<input class="required intlphone" name="phone" minLength="7" type="text" />
Run Code Online (Sandbox Code Playgroud)

正如博客文章所说,它接受数字以及-+()格式x:或格式的空格和扩展名ext:

这并不能保证电话号码在100%的时间内都有效,但这不是一个糟糕的开始.


dev*_*l69 3

关于电话号码,唯一真正(!)有效的东西是什么?至少在国际上来说,电话号码不存在通用格式。您可以只写数字,使用一些括号、破折号、加号等。但真正重要的是数字。大多数国家甚至没有共同的长度限制。

所以不,我还没有看到可用的电话号码验证器。