javascript - 如何使用 Javascript 连续执行多个打印任务?

标签 javascript jquery html printing

现在我需要实现一个通过单击“打印”按钮来打印不同网页的功能。首先,您将看到一个带有不同复选框的网页,因此您可以选择要打印的页面。然后根据选择,将选定的网页加载到隐藏在当前页面中的不同iFrame中,然后使用下面的javascript将其打印出来。

jQuery("body").on("click", "#printBtn", function() {

    var print_page_1 = false;
    var print_page_2 = false;
    var print_page_3 = false;

    //if the checkbox is checked, then mark it as "true"
    if(jQuery('input[name=page_1]:checked').val() == "1") {
        print_page_1 = true;
    }
    if(jQuery('input[name=page_2]:checked').val() == "2") {
        print_page_2 = true;
    }    
if(jQuery('input[name=page_3]:checked').val() == "3") {
    print_page_3 = true;
} 

    //print selected pages
    if(print_page_1) {
        jQuery('#loaderFrameOne').load(function(){
            var w = (this.contentWindow || this.contentDocument.defaultView);
            w.print();
        });
        jQuery('#loaderFrameOne').attr("src", "webpage-one-url");
    } else if (print_page_2) {
        jQuery('#loaderFrameTwo').load(function(){
            var w = (this.contentWindow || this.contentDocument.defaultView);
            w.print();
        });
        jQuery('#loaderFrameTwo').attr("src", "webpage-two-url");
    } else if (print_page_3) {
        jQuery('#loaderFrameThree').load(function(){
            var w = (this.contentWindow || this.contentDocument.defaultView);
            w.print();
        });
        jQuery('#loaderFrameThree').attr("src", "webpage-three-url");
    }
});

但是,我的问题是,每当我单击打印按钮时,即使我选择了两页或三页,也只会打印一页(打印页对话框仅出现一次)。请问有没有办法可以连续执行所有打印任务,让打印页面对话框依次出现?

非常感谢!

最佳答案

您使用了“else if”而不是“if”。因此,始终只会执行一个

关于javascript - 如何使用 Javascript 连续执行多个打印任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25833365/

相关文章:

html - 移动 safari 中的网页 url 栏不是 "shrinking"

javascript - 如何防止特定 $state 在另一个 $state 更新时刷新

javascript - 在事件/回调驱动的 JavaScript 应用程序中管理 "this"

javascript - html5 Canvas 。模糊的线条

javascript - 为什么滑动效果后div内容跳转

javascript - JQuery 外部链接确认移动兼容性

html - 推特 Bootstrap : Label partly hidden behind text input when browser window width is not 100%

javascript - d3.scale.ordinal 的问题

javascript - 在 Google Gears Workerpool 中加密 JSON

jquery - $.ajax 中的响应类型