【发布时间】:2016-11-08 20:58:51
【问题描述】:
我想使用 jQuery Validate 来验证一些使用如下锚点 onclick 处理程序的表单字段,但它似乎不起作用?
<input type="text" id="StartDate" name="StartDate">
<input type="text" id="EndDate" name="EndDate">
<a class="btn btn-primary js-add" href="#">Add</a>
<script>
$(document).on('click', '.js-add', function (e) {
e.preventDefault();
var validator = $("form").validate({
rules: {
StartDate: {
required: true
},
EndDate: {
required: true
}
},
messages: {
StartDate: "The Start Date is required",
EndDate: "The End Date is required"
}
});
if (!validator.valid()) {
console.log("invalid");
return;
}
// otherwise do stuff but we dont want to submit form
});
</script>
我想验证这些字段,如果它们有效,请在处理程序中执行一些其他操作,但我不想提交表单,因为我有另一个用于提交表单的按钮。上面的validator.valid() 函数始终为真。当我提交主按钮时,我不需要验证上述字段,因为它们不是强制性的 - 这只是为了我需要验证上述字段的一些客户端交互。
有什么办法可以达到上述目的吗?
【问题讨论】:
-
这不行吗?
submitHandler: function(form) { /* do anything except form.submit();*/ }
标签: javascript jquery html forms validation