【发布时间】:2013-02-03 12:20:36
【问题描述】:
是否可以查明是否因为引发了 onclick 事件而引发了 onsubmit 事件?
例如,当单击 <input type="submit" /> 时,会引发 onclick 事件,然后引发 onsubmit 事件。但是,有时会发生表单未提交,即 onsubmit 未引发。
重现步骤(表单是ajax表单,它会自行刷新,在IE10上测试):
1) 通过单击按钮提交表单,
2) ajax 请求完成并更新了表单,
3) 5 毫秒后,再次单击按钮(与步骤 1 中的方式相同),但这次 onclick 被触发,但 onsubmit 没有。如果我单击按钮,例如刷新表单后 500 毫秒,一切都很好
我用$("form input[type=submit], form input[type=image]").live("click", function (e) { console.log("click"); }$("form").live("submit", function (e) { console.log("submit"); }
看到没有提出 onsubmit
谢谢
【问题讨论】:
-
发布一些你到目前为止尝试过的代码
-
“有时会发生表单未提交” - 你的意思是说这看似随机发生并且你不知道为什么?请出示您的代码。
-
你发布的代码越相关,你得到的答案就越相关。人们猜不出你的问题是什么。
-
请向我们展示您的设置和您的 javascript。单击提交按钮将提交表单(至少没有验证错误)。
-
可能是因为你没有返回false,而实际上是提交了表单来触发页面加载。您也不应该使用 .live。 api.jquery.com/live
标签: javascript