javascript – 如何将表单提交到新窗口?

前端之家收集整理的这篇文章主要介绍了javascript – 如何将表单提交到新窗口?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我想使用JavaScript动态插入表单,然后提交它并在新窗口中打开目标.

这是我的代码

            var form = document.createElement("form");
            form.setAttribute("method","post");
            form.setAttribute("action",xxx);
            form.setAttribute("onsubmit","window.open('about:blank','Popup_Window','scrollbars=yes,width=550,height=520');");
            form.setAttribute("target","Popup_Window");

            document.body.appendChild(form);
            form.submit();

代码有效 – 它动态插入表单并成功提交表单.但是,表单在新选项卡中打开,而我希望它在新窗口中打开.有什么想法吗?对于如何解决这个问题,有任何的建议吗?我也对jQuery持开放态度.

谢谢!

编辑:我不确定为什么人们将此标记为重复.是的,它与其他问题在同一主题上,但答案没有关系 – 声称的重复问题有一个新的行,搞乱了代码,我没有,但我的代码仍然无法正常工作……

最佳答案
我将此标记为重复,因为我认为您的问题是关于如何将表单发送到弹出窗口.以下是如何在不使用onsubmit事件的情况下执行此操作:

var form = document.createElement("form");
form.setAttribute("method","post");
form.setAttribute("action",xxx);

function submitToPopup(f) {
    var w = window.open('','form-target','width=600,height=400,any-other-option,...');
    f.target = 'form-target';
    f.submit();
};

document.body.appendChild(form);

submitToPopup(form);

因此,不是使用onsubmit事件从那里创建弹出窗口,而是在发送表单之前首先创建它,然后将表单发送给它.

猜你在找的jQuery相关文章