使用JavaScript同时提交2个表单

前端之家收集整理的这篇文章主要介绍了使用JavaScript同时提交2个表单前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在尝试使用javascript同时提交2个表单.
但是,似乎只有第二次提交被打开,而不是第一次提交.

代码很简单:

我不能使用ajax或等价物,因为它必须是’本机’POST(由于CORS问题)

我在某处读到你不能同时提交两份表格,这对我来说没有意义.我已经尝试将目标从“_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);
}
@H_502_29@最佳答案
这不是最漂亮的方式,但我认为无论如何分享它会很好.我最后使用setTimeout解决了它:

var requestDelay = 2000;
document.getElementById("form-a").submit();

setTimeout(function() {
    document.getElementById("form-b").submit();
},requestDelay);

这样,它等待表单A(可能,估计为2秒)已提交,然后提交表单B.您可能需要使用requestDelay来满足您的需求.

原文链接:https://www.f2er.com/html/425978.html

猜你在找的HTML相关文章