window.open()在mozilla和IE中有问题但在chrome中有效

时间:2012-11-23 18:17:19

标签: javascript jquery window.open

好的,这么简单。我正在尝试以另一个窗口中的平面形式打开包含页面信息的打印机友好格式。以下在Chrome中效果很好,但在IE和FireFox中却不尽如人意。这意味着它将打开一个新选项卡,但它从不加载任何内容。有关为什么它可以在chrome而不是firefox工作的任何想法?

function generate_printer_friendly(){
    var form = jQ('<form/>').appendTo(document);

    window.open('','printer_friendly');
    form.attr('action','plugins/BuildAndInstall/pages/printer_friendly.php')
        .attr('target','printer_friendly')
        .attr('method','post')
        ;

    jQ('<input/>')
        .attr('type','hidden')
        .attr('name','bid')
        .val(JSON.stringify(bid))
        .appendTo(form)
        ;

    form[0].submit();
    form.remove();
}

1 个答案:

答案 0 :(得分:1)

您需要将表单附加到$("body"),而不是document。否则,您的表单将无法正确发布。