0

フォームの iframe を動的に作成する JavaScript 関数があるため、フォームは 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;
}
4

1 に答える 1

1

form.target は、ID ではなく iframe 名でなければなりません。

于 2013-11-08T14:12:00.673 に答える