很简单,为什么这不起作用......? jQuery 1.6.2也包括在头部,在此之上。它没有触发验证,现在它只是直接通过并且在没有验证字段的情况下说“已提交”。
头部验证:
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js" type="text/javascript"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/additional-methods.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#newcontract").validate({
rules: {
rec_name: {
required: true
}
},
messages: {
rec_name: {
required: 'You need to enter a contract receiver.'
}
},
submitHandler: function() {
alert("Submitted!"); }
});
});
</script>
表单被命名为newcontract,所以我缺少什么:
<form name="newcontract" id="newcontract" method="post">
<input type="text" name="rec_name" id="rec_name" size="42" class="required"/>
<tr><td class="submit" colspan="3"><input type="submit" name="savelisting" id="savelisting" value="Save New Contract" /></td></tr>
</form>
发生了什么事?它不会验证此文本字段。帮助!
更新:上面的代码按预期工作。问题在于我删除了一个包装表单的表,并且验证插件正在跳过表单。只要我在HTML表格中移动表单,就可以正常工作。
答案 0 :(得分:3)
tr 标签使用不当。
<form name="newcontract" id="newcontract" method="post">
<input type="text" name="rec_name" id="rec_name" size="42" class="required"/>
<p class="submit"><input type="submit" name="savelisting" id="savelisting" value="Save New Contract" /></p>
</form>
第一步,制作正确的html表格。