繁体   English   中英

jQuery正则表达式,带有验证的远程

[英]jQuery regex, remote with validation

我有这个:

    <script type="text/javascript">

jQuery().ready(function() {

    // validate signup form on keyup and submit
    jQuery("#regform").validate({
        rules: {
            NickName: {
                required: true,
                minlength: 2,
                remote : "user_availability.php",
            },
        },
        messages: {
             NickName:{
                      required: "<br>Please enter your username",
                      minlength : "<br>Your username must be at least 2 characters long",
                      remote: "<br>This username is not available, please try another"
                     }
        }
    });
});
</script>

当我尝试添加此处找到的所有addMethod regex示例时,它将无法正常工作

这是我尝试过的:

<script type="text/javascript">

jQuery().ready(function() {

jQuery.validator.addMethod(
        "regex",
        function(value, element, regexp) {
            var check = false;
            var re = new RegExp(regexp);
            return this.optional(element) || re.test(value);
        },
        "Please check your input."
);



    // validate signup form on keyup and submit
    jQuery("#regform").validate({
        rules: {
            NickName: {
                required: true,
                minlength: 2,
                remote : "user_availability.php",
                regex: "^[a-zA-Z'.\s]{1,40}$",
            },
        },
        messages: {
             NickName:{
                     required: "<br>Please enter your username",
                     minlength : "<br>Your username must be at least 2 characters long",
                     remote: "<br>This username is not available, please try another"
                     regex: "Invalid Character",
                    }    
        }
    });
});
</script>

请帮忙

您缺少一个,

remote: "<br>This username is not available, please try another" <<<<<

并且您不需要在对象的最后一个元素上添加',':

NickName: {
                required: true,
                minlength: 2,
                remote : "user_availability.php",
                regex: "^[a-zA-Z'.\s]{1,40}$",
            },   <<<<<<<

就个人而言,我会让整个思路更加整洁

var ValidationObject = {
    rules: {
        NickName: {
            required: true,
            minlength: 2,
            remote : "user_availability.php",
            regex: "^[a-zA-Z'.\s]{1,40}$",
        }
    },
    messages: {
        NickName:{
            required: "<br>Please enter your username",
            minlength : "<br>Your username must be at least 2 characters long",
            remote: "<br>This username is not available, please try another",
            regex: "Invalid Character",
        }
    }
}

然后像这样使用:

jQuery("#regform").validate(ValidationObject);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM