2013-07-10 135 views
10

我有以下的JavaScript代码:无法打印使用JavaScript,打印父页面上IE的iframe,而不是

$(document).ready(function() { 
    $('a#print_button').click(function(event) { 
     event.preventDefault(); 

     var print_url = 'print.html'; 

     if ($('#print_page').length == 0) { 
      $("body").append('<iframe id="print_page" name="print_page" src=' + print_url + ' style="display: none; @media print { display: block; }"></iframe>'); 
     } else { 
      $('#print_page').attr("src", print_quote_url); 
     } 

     $('#print_page').on("load", function() { 
      frames["print_page"].focus(); 
      frames["print_page"].print(); 
     }); 
    }); 
}); 

它适用于Chrome和Firefox。但是当我点击IE上的按钮时,它会打印父页面,而不是打印iframe。

回答

19

我正在寻找解决方案在Internet Explorer中打印Iframe。经过几小时的搜索,我得到了解决方案。它为我工作。请查看以下链接

http://bytes.com/topic/misc/answers/629926-ie7-printing-iframe-solution

document.execCommand('print', false, null); 
+3

欢迎堆栈溢出!虽然这可能会在理论上回答这个问题,[这将是更可取的](http://meta.stackexchange.com/q/8259)在这里包括答案的基本部分,并提供参考链接。 –

+0

非常感谢。我也花了很多时间来找到它的IE8解决方案,它为我工作。 – SeeTheC

+0

谢谢,这帮助我在IE9中打印iframe – nihique