完全加载页面后如何在新窗口中调用打印功能

时间:2015-07-13 12:23:41

标签: angularjs

我有这部分代码,主要思想是在新页面中打开局部视图并为该局部视图调用打印功能。我能做的是打开新窗口并调用打印功能,但我没有成功渲染局部视图...所以我的打印功能是空白的。有人帮我怎么办?

$scope.ConfirmTicketPayOut = function (ticketPin, username) {
    $scope.pinTicket = ticketPin;
    localStorage.setItem("pin", ticketPin);
    accountDataProviderService.confirmTicketPayOut(ticketPin, username)
    .then(function (response) {

        $scope.confirmTicketPayOut = response;
        if ($scope.confirmTicketPayOut.Result == true) {

                    var w = $window.open('/print');

                    angular.element(w).ready('load', function () {
                        w.print();

                    });
               }
    });
}

我试过了:$timeout(w.print(),0);但没有成功

1 个答案:

答案 0 :(得分:0)

在您要等待的元素上使用指令ng-init="" 在那里你可以调用打印功能。

$scope.print = function() {
    print();
}

在html ng-init="print()"中。