打印网页中某一段内容

Posted Insus.NET

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了打印网页中某一段内容相关的知识,希望对你有一定的参考价值。

很久之前,Insus.NET的写过一篇,打印Web网页的。
今次尝试使用jQuery来实现。

打印的网页如下,需要打印的内容,使用一个div标签包含起来。并给此div一个ID值,稍后在jQuery代码会选择到此div。
另外还有放置一个铵钮,让用户点一点此铵钮,就能调用打印对话框进行打印。

 

<div id="divPrintContents">
        标题标题标题标题标题标题标题标题标题标题
        <br />
        <hr />
        <br />
        内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容 <br />
        内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容<br />
        内容内容内容内容内容内容内容<br />
        内容内容内容内容内容内容内容内容内容内容内容内容内容内容<br />
        内容内容内容内
    </div>
    <br />
    <input type="button" id="btnPrint" value="打印" />
Source Code


既然要使用jquery,那得在网页上引用jQuery类库:

<script src="~/Scripts/jquery-3.1.1.js"></script>


jQuery代码:

 

 $(function () {
            $("#btnPrint").click(function () {
                var frame1 = $(\'<iframe />\');
                frame1[0].name = "frame1";
                frame1.css({ "position": "absolute", "top": "-1000000px" });

                $("body").append(frame1);

                var frameDoc = frame1[0].contentWindow ? frame1[0].contentWindow :
                    frame1[0].contentDocument.document ? frame1[0].contentDocument.document : frame1[0].contentDocument;
                frameDoc.document.open();
                frameDoc.document.write(\'<html>\');
                frameDoc.document.write(\'<head>\');
                frameDoc.document.write(\'<title>分析报表</title>\');
                frameDoc.document.write(\'<link href="style.css" rel="stylesheet" type="text/css" />\');
                frameDoc.document.write(\'</head>\');

                frameDoc.document.write(\'<body>\');
                frameDoc.document.write($("#divPrintContents").html());
                frameDoc.document.write(\'</body>\');

                frameDoc.document.write(\'</html>\');
                frameDoc.document.close();

                setTimeout(function () {
                    window.frames["frame1"].focus();
                    window.frames["frame1"].print();
                    frame1.remove();
                }, 500);
            });
        });
Source Code

 
演示:

 

以上是关于打印网页中某一段内容的主要内容,如果未能解决你的问题,请参考以下文章

写一个正则,统计出一个文件中某一段文字出现了多少次。

用java代码实现读取Excel中每个sheet页的内容,并且要与其他的Excel中某一列的值进行

sql语句查询一个表中某一列的相同数据

python 读取多个csv文件中某一列,并生成一个新csv文件

mysql 把表中某一列的内容合并为一行

vscode用啥符号把某一段代码包起来,类似C#的#region?