我正在尝试使用jqueryvalidation.js验证表单提交。 像这样的浏览器响应
HTTP Status 400 -
type Status report
message
description The request sent by the client was syntactically incorrect.
我使用此代码但验证无效
<script type="text/javascript" src = "${contextPath }/static/js/jquery-migrate-1.4.1.min.js"></script>
<script type="text/javascript">
window.jQuery || document.write("<script src='${contextPath}/static/ace_admin1.3.1/assets/js/jquery.min.js'>"+"<"+"/script>");
</script>
<script type="text/javascript" src = "${contextPath }/static/js/jquery.validate.min.js"></script>
<script type="text/javascript">
$.validator.setDefaults({
submitHandler: function() {
alert("sumbit");
}
});
$(function() {
$("#subjectForm").validate({
rules: {
name : {
required: true,
},
testCount : {
required: true,
},
totalTime : {
required: true,
},
totalScore : {
required: true,
}
},
});
});
</script>
</head>
<body>
<form id="subjectForm " action="${contextPath }/teacher/testAddSubject" method="POST">
<p>add</p>
<p><label>subjectName</label><input name = "name" type ="text"/></p>
<p><label>Description</label><input name = "description" type ="text"/></p>
<p><label>number</label><input name = "testCount" type ="text"/></p>
<p><label>time</label><input name = "totalTime" type ="text"/></p>
<p><label>grade</label><input name = "totalScore" type ="text" /></p>
<button type="submit">submit</button>
</form>
</body>
</html>
我不知道哪里出错,请帮帮我。关于jQuery版本和jQuery Validate版本?
答案 0 :(得分:0)
删除...末尾的额外空格
id="subjectForm "
它打破了你的JavaScript。使用破解的JavaScript,jQuery Validate将不会初始化。
(您还需要包含jQuery Migrate AFTER jQuery)
至于您的状态代码400:
客户端发送的请求在语法上是不正确的。
这与jQuery Validate插件完全无关。
400错误请求:由于语法格式错误,服务器无法理解该请求。客户不应该在没有修改的情况下重复请求。
因此,我建议您检查浏览器中的 呈现的 DOM,并确保正确形成每个服务器请求(URL)。另外,请查看${contextPath}/teacher/testAddSubject
处的服务器端脚本,确保它没有损坏。