我有这段代码,就说它是a.html
<form name="frmSubmit" id="frmSubmit" method="post">
<input type="hidden" name="hdnName" value="user name" />
</form>
<script>
// 1 : start
document.frmSubmit.action = 'b.html';
document.frmSubmit.submit();
// 1 : end
// 2 : start
document.getElementById("frmSubmit").action = 'b.html';
document.getElementById("frmSubmit").submit();
// 2 : end
</script>
1 和 2 都在IE(IE 8)中工作,但在FF(3.6.10)中不工作。 Firebug给了我以下错误:
document.frmSubmit未定义
我该如何解决?
答案 0 :(得分:1)
<html>
<head>
<script>
function setup(){
// 1 : start
document.frmSubmit.action = 'b.html';
document.frmSubmit.submit();
// 1 : end
// 2 : start
document.getElementById("frmSubmit").action = 'b.html';
document.getElementById("frmSubmit").submit();
// 2 : end
}
</script>
</head>
<body onload="setup()">
<form name="frmSubmit" id="frmSubmit" method="post">
<input type="hidden" name="hdnName" value="user name" />
</form>
</body>
</html>
答案 1 :(得分:0)
通常,当我要编写那些workarrounds时,为了避免错误停止执行,我用try&amp; cathc包围冲突的块。 我建议使用try / catch bloks包围 1 和 2 ,因此它存在错误,它不会暂停脚本执行。
答案 2 :(得分:0)
我遇到了同样的问题,并设法通过以下方式让它发挥作用:
这对我很有效,而且简单而有效。
答案 3 :(得分:0)
请检查您是否给了, input type =“submit”name =“submit”value =“Proceed”
而不是它,名称应该是这样的 input type =“submit”name =“sub”value =“Proceed”
注意:名称不应该是“提交”