我正在捕捉表单的提交按钮上的点击。我做 event.preventDefault()
禁用默认的浏览器操作,这样我就可以在点击按钮后做我的事情。在这种情况下,我做AJAX调用服务器。通过服务器的响应,我想选择是继续提交表单还是做其他事情。
$inviteSubmitForm.find('input[name="accept"]').click(function(e){
e.preventDefault();
$.ajax({
...
success : function(data) {
if (data.something) {
...
} else {
...
}
}
});
});
问题是,我无法对点击的按钮进行默认操作,因为逻辑在AJAX回调中。所以 return true
只是结束回调函数--我不能使用这个简单的技巧。同时移动 e.preventDefault()
是不可能的,因为表格会立即提交。
有什么办法吗?
触发器来提交表单。
$inviteSubmitForm.find('input[name="accept"]').click(function(e){
e.preventDefault();
$.ajax({
...
success : function(data) {
if (data.something) {
// don't submit
} else {
$inviteSubmitForm.submit();
}
}
});
});