使用JQuery Validate,不显示远程错误,表单提交按钮不起作用

时间:2017-11-03 01:03:48

标签: javascript jquery

我对Jquery验证有两个问题。

1)显示所需的错误消息,但不显示远程错误消息。我已使用Chrome中的F12 / Network标签检查了服务器响应(false / true)。

2)表单提交按钮根本不起作用。 (但如果删除所有脚本代码,它就可以工作。)

这是我的代码:

<style>
    input.error, textarea.error {border:1px solid red;}
    label.error {display:block; color:red; margin-top:15px;}
</style>

<script>
$(function () {
    $("#signupForm").validate({
        onkeyup: function (element, event) {
            if (event.which === 9 && this.elementValue(element) === "") {
                return;
            } else {
                this.element(element);
            }
        },
        rules: {
            inputNickname: {
                required: true,
                remote: {
                    url: "signup_check.php",
                    type: "post",
                    data: {
                        inputNickname: function() {
                            return $("#inputNickname").val();
                        }
                    }
                }
            }
        },
        messages : {
            inputNickname: {
                required: "Please enter the nickname.",
                remote: "The nickname is already in use."
            }
        },
        submitHandler: function(form) {
            alert('submit check');
            form.submit();
        }
    });
});
</script>

<form class="form-horizontal" id="signupForm" action="signup_ok.php" method="post" enctype="multipart/form-data">
<fieldset>
    <legend>Sign up</legend>
    <div class="form-group">
        <label class="col-lg-2 control-label" for="inputNickname">Nickname</label>
        <div class="col-lg-10">
            <input class="form-control" id="inputNickname" type="text" name="inputNickname">
        </div>
    </div>
    <div class="form-group">
        <div class="col-lg-10 col-lg-offset-2">
            <a class="btn btn-default" onclick="return confirm('Are you sure you want to cancel?')" href="javascript:history.back(-1)">Cancle</a>
            <button class="btn btn-primary" type="submit">Register</button>
        </div>
    </div>
</fieldset>
</form>

我不知道为什么以及出了什么问题......

1 个答案:

答案 0 :(得分:0)

我终于解决了这个问题。问题是<meta charset="utf-8">。 我仍然不明白为什么,但是从<meta charset="utf-8">改为header('Content-type: text/html; charset=utf-8');修正了它。现在它没有任何问题。