【发布时间】:2013-03-07 00:35:44
【问题描述】:
jQuery 的on('submit', ...) 正确地拾取原生表单提交,即当按下提交按钮时,但是它不能很好地处理 JS 表单提交,至少在 FF&IE 上是这样
考虑到这一点,如何“正确”添加提交侦听器?通过更改 HTMLFormElement.prototype.submit 的行为来修改 DOM 原型在 IE7 上不起作用
【问题讨论】:
-
原生 js
.submit()不触发 onsubmit 处理程序有一个很好的理由 - 即您可以(并且通常会)非常容易地形成提交处理程序提交的无限递归handler-submit.... 如果您需要从 js 运行表单的处理程序,请使用例如$("#myform").trigger('submit'). -
@Beetroot-Beetroot:哦,这很明显,因为你已经提到了 :) 谢谢,有道理
-
根据您要执行的操作,您有时可以捕获
window.onpageunload进行一些基本的清理工作。 -
@JeremyJStarcher:我正在尝试在提交之前向表单中添加一些数据 - 不适用于
onpageunload,而且它的跨浏览器支持有点古怪
标签: javascript jquery