我有一个表单,当提交时在页面的不同部分生成输出。所有客户端。我想在尝试生成输出之前验证表单:
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript" src="http://jzaefferer.github.com/jquery-validation/jquery.validate.js"></script>
</head>
<body>
<script language="javascript">
$(document).ready(function() {
$( "#processForm" ).validate({
submitHandler: function(form) {
$( "#output" ).empty().append( $("#numberOne").val() );
}
});
});
</script>
<form id="processForm">
<p><input type="text" id="numberOne" value="37" class="required number"/></p>
<p><input type="text" id="numberTwo" value="63" class="required number"/></p>
<!--<p><input type="submit" value="Submit"/></p>-->
<p><button type="submit">Submit</button></p>
</form>
<div id="output"></div>
</body>
</html>
验证numberOne
工作正常并阻止我的代码被执行,但numberTwo
它似乎submitHandler
仍然允许运行。重现步骤:
- 打开,按提交,在提交按钮下方打印通知 37
- 在第一个字段中输入“asdf”,按提交按钮,通知 37 仍然在提交按钮下方
- 在第一个字段中输入“5”,在第二个字段中输入“asdf”,然后按提交按钮。“5”将显示在“提交”按钮下方,即使表单整体无效。
错误消息确实出现了,但在按下“提交”时会被清除。我错过了什么?
我尝试了input
和button
标签。