首页 > 解决方案 > 我应该如何让我的 jquery 验证器工作?(我认为它不会等待远程规则)

问题描述

我正在使用 jQuery 实现表单验证器。但是,它永远不会起作用。它不显示任何消息,而是显示错误。如何使验证器工作?

当我搜索其他询问类似问题的问题时,我发现了一些建议。一种是将remote更改为synchronousRemote,一种是将submitHandler添加到验证器中。我已经尝试了所有这些,但没有任何改变。

这是我的验证器代码:

$("#createMember-form").validate({
            ignore: "",
            rules: {
                name: {
                    required: true,
                    pattern: /^[a-zA-Z ]$/,
                    maxlength: 45
                },
                id: {
                    required: true,
                    minlength: 6,
                    maxlength: 15,
                    pattern: /^[a-zA-Z0-9]$/,
                    remote: {
                        url: "/member/checkUnique",
                        data: document.getElementById("#idField").value,
                        dataFilter: function (data) {
                            return data;
                        }
                    }
                },
                password: {
                    required: true,
                    minlength: 6,
                    maxlength: 15,
                    pattern: /^(?=.*[a-z])[A-Za-z0-9\d=!\-@._*]+$/
                }
            },
            messages: {
                name: {
                    required: "This field is required.",
                    pattern: "Your name should be written in English.",
                    maxlength: "It can't be longer than 45 letters."
                },
                id: {
                    required: "This field is required.",
                    pattern: "Your ID should be written in Romaji and numbers.",
                    minlength: "It can't be shorter than 6 letters.",
                    maxlength: "It can't be longer than 15 letters.",
                    remote: "The user using " + $("#idField").val() + " already exists."
                },
                password: {
                    required: "This field is required.",
                    pattern: "Your ID should be written in Romaji and numbers.",
                    minlength: "It can't be shorter than 6 letters.",
                    maxlength: "It can't be longer than 15 letters."
                }
            },
            submitHandler: function (form) {
                form.submit()
            }
        });

构建数据库表,我将条目id设置为唯一,条目名称id密码永远不会为空。在进入验证器之前,提交了for,并且发生了数据库错误。我想原因是它不等待远程规则被检查。如果是正确的,我应该等待表格什么?如果不是,问题是什么?

标签: javascriptjqueryajaxspringjquery-validate

解决方案


推荐阅读