我有一个表单,并且它的提交事件附有2个不同的功能(参见下面的代码)。
// #1. that part of code does basic client side validation
form.addEventListener('submit', function(event) {
if (form.checkValidity() === false) {
event.preventDefault();
event.stopPropagation();
}
});
// #2. ajax request based on filled data on form
form.addEventListener('submit', function(event) {
event.preventDefault();
$.post(...); // AJAX request
});
如果验证(函数#1)没有通过,我想要避免使用AJAX逻辑(函数#2)。
是否可以停止排队,如果可以 - 我该怎么做?
由于
答案 0 :(得分:0)
您必须将两个函数合并为一个,如下所示:
form.addEventListener('submit', function(event) {
if (form.checkValidity() === false) {
event.preventDefault();
event.stopPropagation();
} else {
$.post(...); // AJAX request
}
});
或以较短的方式:
form.addEventListener('submit', function(event) {
if (form.checkValidity() === true) {
$.post(...); // AJAX request
}
});