zoukankan
html css js c++ java
JS实现局部打印和预览
第一种:
JS 实现简单的页面局部打印
function
preview(oper)
...
...
{
if
(oper
<
10
)...
...
{
bdhtml
=
window.document.body.innerHTML;
//
获取当前页的html代码
sprnstr
=
"
<!--startprint
"
+
oper
+
"
-->
"
;
//
设置打印开始区域
eprnstr
=
"
<!--endprint
"
+
oper
+
"
-->
"
;
//
设置打印结束区域
prnhtml
=
bdhtml.substring(bdhtml.indexOf(sprnstr)
+
18
);
//
从开始代码向后取html
prnhtml
=
prnhtml.substring(
0
,prnhtml.indexOf(eprnstr));
//
从结束代码向前取html
window.document.body.innerHTML
=
prnhtml;
window.print();
window.document.body.innerHTML
=
bdhtml;
}
else
...
...
{
window.print();
}
}
使用很简单 将页面内要打印的内容加入中间
<!--
startprint1
-->
XXXXX
<!--
endprint1
-->
再加个打印按纽 onclick
=
preview(
1
)
第二中:组件法
WebBrowser是IE内置的浏览器控件,无需用户下载.
一、WebBrowser控件
<
object ID
=
'
WebBrowser
'
WIDTH
=
0
HEIGHT
=
0
CLASSID
=
'
CLSID:8856F961-340A-11D0-A96B-00C04FD705A2
'
></
object
>
二、WebBrowder控件的方法
//
打印
WebBrowser1.ExecWB(
6
,
1
);
//
打印设置
WebBrowser1.ExecWB(
8
,
1
);
//
打印预览
WebBrowser1.ExecWB(
7
,
1
);
关于这个组件还有其他的用法,列举如下:
WebBrowser.ExecWB(
1
,
1
) 打开
Web.ExecWB(
2
,
1
) 关闭现在所有的IE窗口,并打开一个新窗口
Web.ExecWB(
4
,
1
) 保存网页
Web.ExecWB(
6
,
1
) 打印
Web.ExecWB(
7
,
1
) 打印预览
Web.ExecWB(
8
,
1
) 打印页面设置
Web.ExecWB(
10
,
1
) 查看页面属性
Web.ExecWB(
15
,
1
) 好像是撤销,有待确认
Web.ExecWB(
17
,
1
) 全选
Web.ExecWB(
22
,
1
) 刷新
Web.ExecWB(
45
,
1
) 关闭窗体无提示
但是打印是会把整个页面都打印出来的,页面里面有什么东西就打印出来,我们有时候只需要打印数据表格,这时我们就要写一个样式了:把不想打印的部份隐藏起来:
样式内容:
<
style type
=
"
text/css
"
media
=
print
>
.noprint...
...
{display : none }
</
style
>
然后使用样式就可以:
<
p class
=
"
noprint
"
>
不需要打印的地方
</
p
>
代码如下:
<
script language
=
"
javascript
"
>
function
printsetup()...
...
{
//
打印页面设置
wb.execwb(
8
,
1
);
}
function
printpreview()...
...
{
//
打印页面预览
wb.execwb(
7
,
1
);
}
function
printit()
...
...
{
if
(confirm(
'
确定打印吗?
'
)) ...
...
{
wb.execwb(
6
,
6
)
}
}
</
script
>
<
OBJECT classid
=
"
CLSID:8856F961-340A-11D0-A96B-00C04FD705A2
"
height
=
0
id
=
wb name
=
wb width
=
0
></
OBJECT
>
<
input type
=
button name
=
button_print value
=
"
打印
"
class
=
"
noprint
"
onclick
=
"
javascript:printit()
"
>
<
input type
=
button name
=
button_setup value
=
"
打印页面设置
"
class
=
"
noprint
"
onclick
=
"
javascript:printsetup();
"
>
<
input type
=
button name
=
button_show value
=
"
打印预览
"
class
=
"
noprint
"
onclick
=
"
javascript:printpreview();
"
>
转载请注明出处[
http://samlin.cnblogs.com/
]
欢迎关注本人公众号:
作者赞赏
查看全文
相关阅读:
基于矩阵式产品管理的奖金如何发放?
再谈技术开发项目与产品开发项目的差异
如何培养合格的产品经理?
技术规划变革管理——共创力典型咨询案例
研发人员任职资格管理深圳公开课成功举办!
深圳市共创力《产品需求挖掘和规划》深圳公开课!(2019.12.6~7)
技术规划与路标开发实践公开课在深圳成功举办!
产品路标开发是企业持续成功的关键路径
什么是技术规划(TPP)?
什么是测试系统工程师(TSE)?
原文地址:https://www.cnblogs.com/samlin/p/1151265.html
最新文章
学习Java 采取令牌的方式避免重复提交
学习java前端 两种form表单提交方式
学习JavaSE 数组
学习JavaSE TCP/IP协议与搭建简易聊天室
编程基础 之 开发环境和测试环境的局别
编程基础 之 环境变量是什么
Program Thread 和 Process的不同点
编程基础 之 编程语言的区别
语法糖和语法盐
编程心法 之 Scrum
热门文章
编程心法 之 内聚度和耦合度是什么
编程心法 之 怎么选择合适的IDE
编程心法 之 敏捷开发(新架构)Agile Team Organization Squads, Chapters, Tribes and Guilds
编程心法 之什么是MVP What is MVP development?
外呼系统APP外呼软件手机电销软件拨号销售软件功能设计
Java导出Excel的Springmvc实例
Java文件上传之SpringMVC实例
系统设计、系统工程和系统架构的差异
如何管理技术牛人?
谈谈研发项目成功交付的标准
Copyright © 2011-2022 走看看