在新窗口中打开iframe内容

时间:2018-02-12 05:22:52

标签: javascript jquery html popup

我想在新窗口中打开iframe而不是打印,我试过但是无法获得它 工作

编辑只是想打开新窗口并查看结构,因为我的页面有动态数据,并且想要打印样式。

$('.btn-prnt').on("click", function(e){
    var divElements = $(".contentWrap").html();
    var oldPage = document.body.innerHTML;
    var iframe = $('<iframe class="hidden" id="printer"></iframe>').appendTo('body');
    var printer = $('#printer');
    printer.contents().find('body').append("<html><head><title>Print Title</title><style></style></head><body><table width='670'><tr><td colspan='2'>" + divElements + "</td></tr></table></body>");
    printer.get(0).contentWindow.print();
    printer.remove();
});

1 个答案:

答案 0 :(得分:1)

您的问题的通用解决方案包括以下两个步骤:

  1. 要打开新窗口,您可以使用window.open

  2. 要将HTML内容写入新窗口的文档,请抓取并使用document.write

  3. <强>代码:

    $('.btn-prnt').on("click", function(e) {
      var
        /* Create a new window. */
        newWin = window.open(),
    
        /* The html you want to write in the new window. */
        html = "<html>...</html>";
    
      /* Get the window's document and write the html content. */
      newWin.document.write(html);
    });