我对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>
我不知道为什么以及出了什么问题......
答案 0 :(得分:0)
我终于解决了这个问题。问题是<meta charset="utf-8">
。
我仍然不明白为什么,但是从<meta charset="utf-8">
改为header('Content-type: text/html; charset=utf-8');
修正了它。现在它没有任何问题。