window.print()不会执行多次

时间:2015-02-17 00:03:17

标签: javascript jquery printing

我想不止一次打印到打印机。 我有2个DIV,一个用于" Order"第二个用于"收据"和一个按钮" OrderAndPay"。我想要的是一个接一个地打印这两个DIV。

这会调用插件

中的print()函数
orderPrint.KappaPrint();
receiptPrint.KappaPrint();

此功能位于创建可打印DIV的插件中

Print = function() {
        $(".printBlock").hide(); 
        printBlock.show(); 
        window.print(false);
        printBlock.hide();
    }

问题是当我打印一个div时,它打印没有任何错误。 但是当我为2个div调用print时,print()会出现异常。

第一个例外:NS_ERROR_NOT_AVAILABLE。
第二个例外:某些打印功能目前无法使用

完整代码:

Call The Print Function
"OrderAndPay": {
                    Text:KappaMainData.Constants.OrderAndPay,
                    OnClick : function(){
                        var itemsData = $("#ItemsDashBoard").KappaData();
                        if(itemsData === null) { return; }
                        var receiptData = {}, dat = {}, orderData = {};
                        dat = {"OrderOp":"Order", "Op":"Save", "SellOp":"OrderAndSell", "Data":itemsData};
                        var itemsSavedData = GetJsonAjax({Url:"Functions/order.php", Data:dat});
                        receiptData = GetRecieptData(itemsSavedData);

                        receiptPrint.Fill(receiptData);
                        orderData = GetOrderData(itemsSavedData);
                        orderPrint.Fill(orderData);
                        orderPrint.KappaPrint();
                        receiptPrint.KappaPrint(); //this one throws the exception
//always the second print throws exception
                    }
                },

Printing function
Print = function() {
        $(".printBlock").hide(); //class for all print blocks
        printBlock.show(); //current block
        window.print(); //Or:window.print(false);
        printBlock.hide();
    }

注意:我使用css media print来控制我想要打印的可见内容。

0 个答案:

没有答案