我遇到了绝对奇怪的Chrome的行为。以下是代码
<form method="post" id="form" accept-charset="UTF-8" action="/lalala">
<input type="submit" />
<input type="text" name="submit" value="Post this" />
</form>
<script>
setTimeout(function(){
var forma = document.getElementById("form");
console.log(forma.submit);
forma.submit();
},30000);
</script>
打印到Chrome调试窗口
<input type="text" name="submit" value="Post this">
Uncaught TypeError: object is not a function
即。 document.getElementById(“form”)。submit是一个输入,但不提交回调!!
是否可以提交此表单,并保留输入名称=提交?
答案 0 :(得分:1)
是否可以提交此表单,并保留输入名称=提交?
我相信,答案是 NO 。
我遇到了绝对奇怪的Chrome的行为。
我也可以在 Firefox 中找到问题。
当您将关键字submit
用作name
中元素的id
或form
时,form.submit
会转到object
引用对应的节点而不是function
引用submit
form
。
请参阅JSFiddle
<form method="post" id="form" accept-charset="UTF-8" action="/lalala">
<input type="submit" />
<input type="text" name="submit" value="Post this" />
</form>
var form = document.getElementById("form");
console.log(typeof form.submit);
答案 1 :(得分:0)
好的,我找到了解决方案:
<input id="submit" type="submit" />
<script>
var button = document.getElementById("submit");
button.click();
</script>