![](/img/trans.png)
[英]How to prevent function call on submit form if required fields are not filled out?
[英]How to prevent submit but still validate required fields?
我有一个表单,当提交时,我可以使用e.preventDefault()
阻止它,但是我仍然希望浏览器在进行AJAX调用之前先验证必填字段。
我不想看待JavaScript验证,只希望浏览器验证必填字段(HTML5)。
我该如何实现?
即使您不执行checkValidity
检查,它也可以工作。 在chrome中,如果表单无效,它将不会在表单上调用Submit函数:
$(document).ready(function(){
$("#calendar_form").submit(function(e){
e.preventDefault();
calendarDoAjax();
});
function calendarDoAjax(){
var proceed = false;
if( $("#calendar_form")[0].checkValidity ){
if ($("#calendar_form")[0].checkValidity()) {
proceed = true;
}
}else{
proceed = true;
}
if (proceed) {
//Do ajax call
}
}
});
在您的Submit函数的末尾添加:
if (evt && evt.preventDefault) {
evt.preventDefault();
} else if (event) {
event.returnValue = false;
}
return false;
然后像这样在函数中传递var evt
:
function(evt) { /* Your Code */ }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.