2
后我赶上上提交表单的按钮点击。我做event.preventDefault()
禁用默认的浏览器动作,所以我可以在点击按钮后做我的东西。我这种情况下,我做AJAX调用服务器。通过服务器的响应,我想选择是否继续提交表单或做其他事情。触发事件event.preventDefault
$inviteSubmitForm.find('input[name="accept"]').click(function(e){
e.preventDefault();
$.ajax({
...
success : function(data) {
if (data.something) {
...
} else {
...
}
}
});
});
问题与此是,我无法施展点击按钮的默认操作,COS逻辑在AJAX回调。所以return true
只是结束回调函数 - 我不能使用这个简单的技巧。也移动e.preventDefault()
是不行,cos表单立即提交。
任何想法?
该解决方案是确定和工作,但 - 我有几个形式提交按钮。如果我想通过这种方法区分按钮,我必须在原始提交按钮的名称后面添加。这仍然可以,但我正在寻找一个系统清洁的解决方案 - 改写原始按钮的旧事件。 – srigi
@srigi:为什么你需要一个隐藏的输入字段?你已经在做:'find('input [name =“accept”]')'这应该只是一个'type'按钮。此外,如果你有相同的功能处理多个按钮只需添加一个简单的开关。你想让我为你添加一个例子吗? – PeeHaa
个人而言,我想看看如何在事件级别处理此问题。 –