我有以下代码块,该代码块将使用当前窗口内容打开一个新的浏览器窗口,但以精简版式进行打印除外。然后它将新页面发送到打印机,最后关闭页面。我遇到的问题是,在打印机选项卡获取所有数据之前,新窗口似乎正在关闭。也许从print()进行回调,然后在完成时调用close()?我将如何实现此功能?
提前致谢。

打印清单

<script type="text/javascript">
    function generate_url()
    {
        //var go_href = 'http:<?php echo BASE_URL ?>/admin/reservations/print_list';
        myWin = window.open('http:<?php echo BASE_URL ?>/admin/reservations/print_list');
        myWin.focus();
        myWin.print();
        myWin.close()
        return false;
    }

</script>

最佳答案

我认为没有用于打印的回调函数。我建议您可以延迟窗口关闭,这可能会有所帮助:

myWin.focus();myWin.print();setTimeout(function(){ myWin.close();}, 6000);


希望它能有所帮助

07-25 20:44