zoukankan
html css js c++ java
【经验分享】ASP.NET 页面打印与预览
第一种是所见即所得的:
所见即所得
<
html
>
<
head
>
<
title
>
ASP.NET 打印 - 所见即所得
</
title
>
<
meta
http-equiv
="Content-Type"
content
="text/html; charset=gb2312"
>
<
script
language
="javascript"
>
function
preview()
{
bdhtml
=
window.document.body.innerHTML;
sprnstr
=
"
<!--startprint-->
"
;
eprnstr
=
"
<!--endprint-->
"
;
prnhtml
=
bdhtml.substr(bdhtml.indexOf(sprnstr)
+
17
);
prnhtml
=
prnhtml.substring(
0
,prnhtml.indexOf(eprnstr));
window.document.body.innerHTML
=
prnhtml;
window.print();
//
prnform.htext.value=prnhtml;
//
prnform.submit();
//
alert(prnhtml);
}
</
script
>
</
head
>
<
body
bgcolor
="#FFFFFF"
text
="#000000"
>
辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣
<
center
>
本部分以上不被打印
</
center
>
<!--
startprint
-->
<
table
width
="84%"
align
="center"
bgcolor
="#0000FF"
cellpadding
="2"
cellspacing
="1"
>
<
tr
bgcolor
="#6699FF"
>
<
td
>
<
div
align
="center"
>
标题一
</
div
>
</
td
>
<
td
>
<
div
align
="center"
>
标题二
</
div
>
</
td
>
<
td
>
<
div
align
="center"
>
标题三
</
div
>
</
td
>
<
td
>
<
div
align
="center"
>
标题四
</
div
>
</
td
>
<
td
>
<
div
align
="center"
>
标题五
</
div
>
</
td
>
</
tr
>
<
tr
bgcolor
="#6699FF"
>
<
td
>
</
td
>
<
td
>
</
td
>
<
td
>
</
td
>
<
td
>
</
td
>
<
td
>
</
td
>
</
tr
>
</
table
>
<!--
endprint
-->
<
center
>
本部分以下不被打印
</
center
>
辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣辣
<
div
align
="center"
>
<
input
type
="button"
name
="print"
value
="预览并打印"
onclick
="preview()"
>
</
div
>
<
style
>
@media print
{
}
{
.Noprn {display
:
none
;
}
}
</
style
>
<
p
class
="Noprn"
>
不打印
</
p
>
<
table
id
=datagrid
><
tr
><
td
>
打印
</
td
></
tr
></
table
>
<
input
class
=Noprn
type
=button
onclick
="window.print()"
value
="print"
>
</
body
>
</
html
>
第二种是对页面样式进行解析后的
Print.js
function
doPage()
{
layLoading.style.display
=
"
none
"
;
//
同上
}
//
设置网页打印的页眉页脚为空
function
PageSetup_Null()
{
try
{
var
Wsh
=
new
ActiveXObject(
"
WScript.Shell
"
);
HKEY_Key
=
"
header
"
;
Wsh.RegWrite(HKEY_Root
+
HKEY_Path
+
HKEY_Key,
""
);
HKEY_Key
=
"
footer
"
;
Wsh.RegWrite(HKEY_Root
+
HKEY_Path
+
HKEY_Key,
""
);
}
catch
(e)
{}
}
//
设置网页打印的页眉页脚为默认值
function
PageSetup_Default()
{
try
{
var
Wsh
=
new
ActiveXObject(
"
WScript.Shell
"
);
HKEY_Key
=
"
header
"
;
Wsh.RegWrite(HKEY_Root
+
HKEY_Path
+
HKEY_Key,
"
&w&b页码,&p/&P
"
);
HKEY_Key
=
"
footer
"
;
Wsh.RegWrite(HKEY_Root
+
HKEY_Path
+
HKEY_Key,
"
&u&b&d
"
);
}
catch
(e)
{}
}
/**/
/*
*预览函数
*controlsList 要隐藏的控件
*doType 页面页脚类型 0 设置为空,1 设置为默认
*/
function
printpr(controlsList,doType)
{
if
(doType
==
'
0
'
)
{
PageSetup_Null();
}
else
{
PageSetup_Default();
}
var
control
=
controlsList.split(
"
,
"
);
for
(i
=
0
;i
<
control.length;i
++
)
{
//
隐藏控件
document.getElementById(control[i]).style.display
=
"
none
"
;
}
var
OLECMDID
=
7
;
var
PROMPT
=
1
;
var
WebBrowser
=
'
<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>
'
;
document.body.insertAdjacentHTML(
'
beforeEnd
'
, WebBrowser);
WebBrowser1.ExecWB(OLECMDID, PROMPT);
WebBrowser1.outerHTML
=
""
;
for
(i
=
0
;i
<
control.length;i
++
)
{
//
打印之后将该元素显示出来
document.getElementById(control[i]).style.display
=
""
;
}
window.location.reload();
//
刷新窗口
}
/**/
/*
*预览函数
*controlsList 要隐藏的控件(用逗号连接)
*doType 页面页脚类型 0 设置为空,1 设置为默认
*/
function
printTure(controlsList,doType)
//
打印函数
{
if
(doType
==
'
0
'
)
{
PageSetup_Null();
}
else
{
PageSetup_Default();
}
var
control
=
controlsList.split(
"
,
"
);
for
(i
=
0
;i
<
control.length;i
++
)
{
//
隐藏控件
document.getElementById(control[i]).style.display
=
"
none
"
;
}
window.print();
for
(i
=
0
;i
<
control.length;i
++
)
{
document.getElementById(control[i]).style.display
=
""
;
}
window.location.reload();
}
打印调用
<
div
style
="text-align: right"
>
<
input
type
="button"
name
="btn"
value
="打印"
onclick
="printTure('btn,show','0')"
/>
<
input
type
="button"
name
="show"
value
="预览"
onclick
="printpr('btn,show','0')"
/>
</
div
>
查看全文
相关阅读:
linux系统命令学习系列-用户切换命令su,sudo
linux系统命令学习系列-用户组管理
linux系统命令学习-用户管理
python web开发-flask中sqlalchemy的使用
python web开发-flask连接sqlite数据库
python实现bt种子 torrent转magnet
prefProvider.kt
douyin-bot-代码
pyadb关于python操作adb的资料
bottle源码
原文地址:https://www.cnblogs.com/a311300/p/1280411.html
最新文章
[IDEA]IDEA导入jquery报404错误
[Linux] Zookeeper启动报错 JAVA_HOME is not set and java could not be found in PATH
[Linux]Ubantu20.04下使用apt方式安装MySql8.0.21过程中不提示设置密码的解决方法
Maven常用命令(转载)
[MAC] zsh 和 bash 的相互切换
早期as86汇编指令rep movw解释
记linux_centOS安装as86过程
Scala trait 线性推导
编程语言拟人化
Scala 排序函数
热门文章
Scala学习----数组相关操作(转载)
Scala Study --- override
Scala 安装与使用
[POJ] POJ1008 Maya Calendar
关于存在的思考
linux系统命令学习系列8-文件相关操作touch,rm,mv,cat,head,tail命令
Html5视频播放video标签使用详解【转】
linux系统命令学习系列-定时任务crontab命令
python常用运算符
linux系统命令学习系列-例行任务管理at命令
Copyright © 2011-2022 走看看