IE9在表单提交上打开新选项卡(表单具有目标属性,指向动态创建的iframe的指针)

时间:2013-03-05 12:34:03

标签: javascript post internet-explorer-9

我有一个javascript函数,可以动态创建表单的iframe,因此表单会发送到iframe。该代码适用于Chrome,Opera和Firefox,但是当我提交表单时,IE会打开新选项卡。

如何解决此问题?

HTML

<form id="form1" name="form1" action="/post.php" method="post">
  <input type="text" name="foo" value="bar">
  <button type="submit" name="send">Send</button>
</form>

Javascript (在页面加载时运行)

var form = document.getElementById("form1");
if(!form.target) {
  var frame = document.createElement("iframe");
  frame.name = "frame" + Math.random();
  frame.id = frame.name;

  document.body.appendChild(frame);

  form.target = frame.id;
}

1 个答案:

答案 0 :(得分:1)

form.target必须是iframe名称,而不是id。