0

つまり、ページからボタンをクリックすると、目的のページコンテンツがシートに印刷されます。ここでの主な目標は、特定のページの複数の印刷を選択できる[OK]または[キャンセル]ボタンを要求するページの印刷ダイアログボックス/印刷プレビューが表示されないようにすることです。前もって感謝します。

4

2 に答える 2

0

対象のブラウザは何ですか?これを行うには、ブラウザ固有の方法がいくつかあります。

IE の場合:

<script language='VBScript'>
Sub Print()
       OLECMDID_PRINT = 6
       OLECMDEXECOPT_DONTPROMPTUSER = 2
       OLECMDEXECOPT_PROMPTUSER = 1
       call WB.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER,1)
End Sub
document.write "<object ID='WB' WIDTH=0 HEIGHT=0 CLASSID='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'></object> 
</script>




window.print();

参照 : msdn ブログ

于 2013-02-27T07:16:18.350 に答える
0

次のコードで print.js ファイルを作成します。

// ------------------------------------------------ -----------------------

(関数($) {
    変数を選択します。

    $.fn.jqprint = 関数 (オプション) {
        opt = $.extend({}, $.fn.jqprint.defaults, options);

        var $element = (この jQuery のインスタンス) ? これ: $(これ);

        if (opt.operaSupport && $.browser.opera)
        {
            var tab = window.open("","jqPrint-preview");
            tab.document.open();

            var doc = tab.document;
        }
        そうしないと
        {
            var $iframe = $("");

            if (!opt.debug) { $iframe.css({ position: "absolute", width: "0px", height: "0px", left: "-600px", top: "-600px" }); }

            $iframe.appendTo("本文");
            var doc = $iframe[0].contentWindow.document;
        }

        if (opt.importCSS)
        {
            if ($("link[media=print]").length > 0)
            {
                $("link[media=print]").each( function() {
                    doc.write("");
                });
            }
            そうしないと
            {
                $("リンク").each( 関数() {
                    doc.write("");
                });
            }
        }

        if (opt.printContainer) { doc.write($element.outer()); }
        else { $element.each( function() { doc.write($(this).html()); }); }

        doc.close();

        (opt.operaSupport && $.browser.opera ? tab : $iframe[0].contentWindow).focus();
        setTimeout( function() { (opt.operaSupport && $.browser.opera ? tab : $iframe[0].contentWindow).print(); if (tab) { tab.close(); } }, 1000);
    }

    $.fn.jqprint.defaults = {
        デバッグ: 偽、
        importCSS: 真、
        printContainer: 真、
        オペラサポート: 真
    };

    // http://users.livejournal.com/9__/380664.html にある 9__ に感謝
    jQuery.fn.outer = function() {
      $($('').html(this.clone())).html(); を返します。
    }
})(jQuery);

次に、print.js を html ページに含めて、このデモを参照してください。

<スクリプト>
jQuery(ドキュメント).ready(関数() {
    jQuery("#printBtn").click(関数(){
    jQuery("#print").jqprint();
    });
});
</script>
<input type="button" id="printBtn" value="印刷" />
<div id="印刷">
これにより、このコンテンツが印刷されます。
</div>
于 2013-02-27T07:18:52.363 に答える