Jquery验证插件字母数字方法接受点

时间:2017-05-23 12:56:01

标签: javascript jquery html validation

我在用户名字段中有一个要求,我必须验证特殊字符但允许'。'点字符。 我们在插件字母数字中有自定义方法,但它不允许使用点。请查看fiddle

jQuery.validator.addMethod("alphanumeric", function(value, element) {
    return this.optional(element) || /^\w+$/i.test(value);
}, "Letters, numbers, and . only please");

1 个答案:

答案 0 :(得分:6)

使用此正则表达式/^[\w.]+$/i

您可以使用正则表达式的字符集[]来选择多个字符。

正则表达式中的

^表示它从字符串的开头开始匹配。

正则表达式中的

\w表示它接受所有字母数字(A-Za-z0-9) 下划线(_)。

我在字符集中添加了.以允许字符.

您可以在[]字符集中添加更多字符以允许它们。

正则表达式中的

+意味着它将继续匹配字符串中的所有字符。

正则表达式中的

$意味着它将检查直到行的末尾是否有多行

正则表达式中的

i是一个标志,表示其不区分大小写。

这是更新的小提琴

http://jsfiddle.net/YsAKx/330/

更新了JS

$(document).ready(function () {

jQuery.validator.addMethod("alphanumeric", function(value, element) {
    return this.optional(element) || /^[\w.]+$/i.test(value);
}, "Letters, numbers, and underscores only please");

    $('#myform').validate({ // initialize the plugin
        rules: {
            field: {
                required: true,
                alphanumeric: true
            }
        },
        submitHandler: function (form) { // for demo
            alert('valid form submitted'); // for demo
            return false; // for demo
        }
    });

});