我有一个需求,需要打开多个窗口,这些窗口的大部分值相同,但有少数不同(Chrome和IE不能按照预期执行以下代码)。以下是我的一段 javascript 代码。
function test(){
for(var i=0; i<3; i++){
var eForm = document.forms[0];
eForm.action = "demo_form.asp?targetNum="+i;
eForm.target = "_blank";
eForm.submit();
}
}
这是我的HTML表单..
<form method="post">
First name: <input type="text" name="fname"><br>
Last name: <input type="text" name="lname"><br>
<input type="button" value="Submit" onclick="test();">
</form>
这段代码在Firefox上可以完美运行,并且按预期打开3个选项卡。但是在Chrome和IE中,它只会打开一个窗口(不确定是否覆盖了相同标签页中的以前窗口)。在Chrome中,它显示带有最后一个
targetNum
作为2
的窗口,在IE中,它显示第一个targetNum
即0
。我的目标是实现与火狐浏览器类似的行为,也就是用相应的表单值打开多个窗口。
在寻找解决方案时,我在某个论坛帖子中发现了一篇帖子,该帖子建议在我的表单标记下添加
onsubmit="this.action=this.action + '1';"
。尝试了一下,但没有起作用。附注:不能使用window.open,因为我正在从Java bean中填充值,这些值将被最后打开的窗口覆盖。