我想触发当前元素所在表单的提交事件.我知道的方法有时是:
this.form.submit();
我想知道是否有更好的解决方案,可能使用jQuery,因为我不是100%确定方法适用于每个浏览器.
编辑:
我的情况如下:
我希望能够提交更改表格.
我正在寻找的解决方案适用于任何形式的任何领域,而不知道表单上的ID或名称.$('form:first')
并且$('form')
不起作用,因为表单可能是页面上的第三个.此外,我已经在网站上使用jQuery,所以使用一些jQuery并不是什么大问题.
那么,有没有办法让jQuery检索输入/ select/textarea所在的表单?
我认为你要找的是这样的:
$(field).closest("form").submit();
例如,要处理onchange事件,您将拥有:
$(select your fields here).change(function() { $(this).closest("form").submit(); });
如果由于某种原因你没有使用jQuery 1.3或更高版本,你可以调用parents
而不是closest
.
this.form.submit();
这可能是你最好的选择.特别是如果您尚未在项目中使用jQuery,则无需为此目的添加它(或任何其他JS库).