2010-07-17 105 views
9

这可能有一个明显的答案,但我对js很新,所以我不知道如何做到这一点。我希望在页面加载时自动提交页面上的表单,而不需要像按下按钮那样的任何用户操作。这个怎么做?如何使页面加载JavaScript时自动提交表单?

+2

五月我问你为什么要这么做?看起来似乎必须有比自动提交更好的解决方案。 – zvone 2010-07-17 20:43:11

回答

16
<form id=lol action="file.php"></form> 
<script>document.getElementById('lol').submit();</script> 
+0

这是在页面加载之前提交表单的附加优势:) – Anurag 2010-07-17 20:39:15

+0

但是原始问题具体要求在页面加载时提交表单,而不是在页面加载之前提交 – bluesmoon 2010-07-18 02:18:53

12

像这样:

window.onload = function(){ 
    document.formName.submit(); 
}; 
2

我会去什么SAC建议,但我会用一个事件监听器,而不是仅仅写在window.onload:

function submit_form() { document.formName.submit(); } 

if(window.attachEvent){ 
    window.attachEvent("onload", submit_form); 
}else{ 
    window.addEventListener("load", submit_form, false); 
} 
+0

为什么?它是否提供其他好处? (真的很好奇) – PandemoniumSyndicate 2016-09-29 22:39:36

+0

最大的问题是写入window.onload会覆盖分配给window.onload的其他内容。除此之外,自从20世纪90年代后期增加事件监听器的正式方法以来,它一直被认为是反模式。用于添加事件监听器的正式方法为您提供了检查事件的额外功能,并取消了可能导致该事件的任何默认操作(尽管不能用于加载和卸载)。 – bluesmoon 2016-09-30 13:57:30

+0

真棒,感谢您花时间回答我的问题:) – PandemoniumSyndicate 2016-09-30 17:08:45