JavaScriptを使用して2つのフォームを同時に送信しようとしています。 しかし、最初の投稿ではなく、2番目の投稿だけが開いているようです。JavaScriptを使用して同時に2つのフォームを送信する
コードは非常に簡単です:
<html>
<body>
<form id="report_0" method="POST" target="_blank" action="https://www.google.com">
<input type="hidden" name="test1" value="1">
<input type="submit" value="report_0">
</form>
<form id="report_1" method="POST" target="_blank" action="https://www.google.com">
<input type="hidden" name="test2" value="2">
<input type="submit" value="report_1">
</form>
<script>
document.getElementById("report_0").submit();
document.getElementById("report_1").submit();
</script>
</body>
</html>
I ことはできません使用アヤックスまたはそれは私がどこかで読んだ
(によるCORSの問題のために)「ネイティブ」POSTなければならないような等価あなたは一度に2つのフォームを提出することはできませんが、これは私には意味がありません。私はターゲットを "_blank"から "form1" & "form2"に変更しようとしましたが、まだ何もありません。
for (....) {
var form = document.createElement("form");
form.setAttribute("name", "report_"+i);
form.setAttribute("method", "POST");
form.setAttribute("target", "_blank");
form.setAttribute("action", action);
for (var key in parms) {
var field = document.createElement("input");
field.setAttribute("type", "hidden");
field.setAttribute("name", key);
field.setAttribute("value", parms[key]);
form.appendChild(field);
}
console.log(form);
document.body.appendChild(form);
form.submit();
document.body.removeChild(form);
}
すぐに2つのフォームを提出したいと思うからといって、それを行うことはできません。両方のフォームを提出する「両方を送信」ボタンを追加すると、FirefoxとIEで「動作します」。 – RobG
RobG、Chromeについてはどうですか? – natiz