我有一个页面,我修改了一个应用程序以预先填充了许多字段。我想在页面加载时自动按下/提交“提交”按钮。我尝试过这样的事情:
<script type="text/javascript">
function autoclick() {
document.getElementById('buttonid').click();
}
</script>
与
<body onload="autoclick()">
但它不起作用。
非常感谢任何建议!
由于
(这是该网站上的iframe:http://abraxas.pw)
答案 0 :(得分:1)
我发现您的iframe位于同一个域中,因此您可以使用跨域安全性。
给iframe
id
document.getElementById('iframeName').contentWindow.document.getElementById("buttonid").click()
。然后:
body
此处有更多信息:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#Scripting
在启动Javascript之前,请确保DOM已完全加载。将此代码包装到iframe
加载或domloaded
加载。
如果iframe位于同一个域中并且在您的控制范围内,则您不需要执行所有操作。只需点击jQuery的head
点击,或者将代码放在最后(就在正文结束之前)。它会工作。
查看代码,您已在body
中定义了该函数,并在{{1}}加载时调用该函数。将功能和呼叫放在身体的末端。
答案 1 :(得分:0)
出于安全原因,您无法在iframe中执行此操作:http://pipwerks.com/2008/11/30/iframes-and-cross-domain-security-part-2/
答案 2 :(得分:0)
使用javascript无法在您的网页中控制来自iframe中不同域的内容。 浏览器将iframe视为不同的窗口,因此您无法访问它。这就像试图从你自己的窗口访问浏览器中打开的不同窗口的内容(这显然是不可能的)