这是一个JavaScript问题。JavaScript提交
考虑下面的代码:
<input type="button" name="applyFilter" value="Apply Filter" onClick="doSubmit('applyFilter')"/>
function doSubmit(action) {
f=document.forms[0];
f.action=action;
f.submit();
}
我怎样才能获取该按钮的表单对象中doSubmit点击()?目前,您可以看到对表单[0]的引用,但我希望这可以在页面上使用多个表单,并且我不想传入表单名称/标识/引用或按钮对象引用。该按钮位于表单上,我希望doSubmit(action)函数可以获取该表单对象。
是你传递给'doSubmit()'不知何故唯一不同形式的字符串?如果没有,因为你说过你不会做类似'onclick =“doSubmit('applyFilter',this);'我没有看到你如何获得表单 - 因为它代表'doSubmit()'函数甚至没有对按钮的引用,因此如何确定哪个窗体与它不知道的按钮有关?(在IE中,您可以使用'window.event'来获取细节,但不能在其他浏览器中) – nnnnnn 2012-03-12 02:44:09
@nnnnnn我知道这可能是不可能的,但我仍然想问,而不是假设。 – jacekn 2012-03-12 02:55:22
如果您无法更改标记,我认为不能完成。你可以改变标记有很多可能的解决方案 - 如果你坚持使用内联处理程序,甚至可以完全通过将按钮更改为'type =“submit”'然后使用'onclick'来完全抛弃'doSubmit()'函数=“this.form.action ='applyFilter';”'。) – nnnnnn 2012-03-12 03:28:28