我有一个iframe和一个表单。我想将表单提交到iframe。这有效,但JS不会提交表格。我希望表单在页面加载时提交,或者只是在浏览器呈现脚本时提交。我已经尝试了大约10种不同的JavaScript变体,并成功提交了带有按钮的表单。有什么想法吗?
<iframe src="http://domain.com" name="i0"></iframe>
<form action="http://domain.com/" target="i0" id="f0" method="POST">
<input type="hidden" name="secret" value="4cda562cd5dafa1882c9f18dc0dc5dba">
<input type="hidden" name="id" value="39">
</form>
<script type='text/javascript'>
document.getElementById('f0').submit();
</script>
答案 0 :(得分:3)
<input type="submit" name="submit">
这是导致您的问题,将其名称更改为其他内容的原因。因为现在这个
document.getElementById('f0').submit();
正在尝试访问该输入,并提供错误:
TypeError: document.getElementById(...).submit is not a function
您应该在此处发布所有表单代码,我们可以更快地找到它:)
答案 1 :(得分:0)
我知道,你不能在这里使用name="submit"
,因为你覆盖了表单提交方法,更改了它,ep>
<input type="submit" name="bsubmit">
答案 2 :(得分:0)
也许是因为你的iframe还没有完全加载,所以你需要等待它:
<script type='text/javascript'>
document.getElementsByName('iframe')[0].onload = function(){
document.getElementById('f0').submit();
}
</script>