Javascript 收听所有表单提交事件

Javascript 收听所有表单提交事件,javascript,jquery,Javascript,Jquery,jQuery在('submit',…)上的正确地拾取本机表单提交,即当按下提交按钮时,但是它不能很好地处理JS表单提交,至少在FF&IE上是这样 考虑到这一点,如何“正确地”添加提交侦听器?通过更改HTMLFormElement.prototype.submit的行为来修改DOM原型在IE7上不起作用 使用jQuery.submit()提交表单将解决此问题 $('#someForm').submit(); 当然,如果您真的坚持使用本机DOM.submit(),它不会有多大帮助。本机js.su

jQuery在('submit',…)上的
正确地拾取本机表单提交,即当按下提交按钮时,但是它不能很好地处理JS表单提交,至少在FF&IE上是这样

考虑到这一点,如何“正确地”添加提交侦听器?通过更改
HTMLFormElement.prototype.submit的行为来修改DOM原型在IE7上不起作用


使用jQuery
.submit()
提交表单将解决此问题

$('#someForm').submit();


当然,如果您真的坚持使用本机DOM
.submit()

,它不会有多大帮助。本机js
.submit()
不会触发onsubmit处理程序有一个很好的原因,即您可以(而且通常会)非常容易地形成一个无休止的submit处理程序submit的递归。。。。如果您需要从js运行表单的处理程序,那么请使用例如
$(“#myform”).trigger('submit')
@Beetroot Beetroot:噢,您已经提到了这一点,这是很明显的:)谢谢,这是有意义的,取决于您正在尝试做什么,有时,您可以捕获
窗口。onpageunload
来进行一些基本的清理。@JeremyJStarcher:我正在尝试在提交前向表单添加一些数据-与
onpageunload
不太兼容,而且它的跨浏览器支持也有点古怪