1.第一种方法:打印指定框架中的内容
此方法可以控制具体的打印内容
点击参考
2.第二种方法:通过CSS样式打印表格
CSS样式打印控制的是指定表格的背景,不能控制表格内容的输出。
主要会用到CSS样式的media类型,media是媒体类型,用于直接引入媒体的属性。语法格式如下:
@media screen | print | projection | braille | aural | tv | handheld | all
【举例说明:】
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
<!-- CSS定义表格打印样式 -->
<style type="text/css">
@media print{
div{
display: none;
}
.bgnoprint{
background: display:none;
}
}
body{
margin-top: 0px;
}
</style>
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
<!-- js定义打印预览函数 -->
<script type="text/javascript">
function printview{
document.all.myweb.ExecWB(7,1);//myweb是标签object的id;ExecWB(7,1)代表打印预览
window.close();
}
</script>
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
<!-- 嵌入一个对象 -->
<!-- <object>标签用于包含对象,比如图像、音频、视频、Java applets、ActiveX、PDF 以及 Flash -->
<object id="myweb" width="0" height="0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2">
</object>
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
<!-- 打印、打印预览 -->
<body class="bgnoprint">
<table>
. . . <!-- 打印的内容 --> . . .
<div>
<a href="#" onclick="window.print();">打印</a>
<a href="#" onclick="printview();">打印预览</a>
</div>
</table>
</body>
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
关于:原文链接
网页中的object其实就是一个COM组件(概念可以网上查一下),
classid就是这个COM组件在系统中注册的一个ID值,
有了这个ID值系统才能找到这个COM组件对应的DLL文件,就像普通的软件用其他DLL时需要一个路径一样。而后面的codebase一般是用来下载和更新组件用的,比如浏览某个网页时,发现您的机器上没有安装这个组件,就会去codebase的地方下载组件,有了新的版本也会提示您安装新版本。基本就这样 。
在网页中如果要设置 object的 classid属性。有个快捷实用的方法,在dreamweaver等类似软件中的 “插入对象” ,则该类工具会自动生成 classid。
WebBrowser是一个ie的打印控件
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>
<input name=Button onClick=document.all.WebBrowser.ExecWB(1,1) type=button value=打开>
<input name=Button onClick=document.all.WebBrowser.ExecWB(2,1) type=button value=关闭所有>
<input name=Button onClick=document.all.WebBrowser.ExecWB(4,1) type=button value=另存为>
<input name=Button onClick=document.all.WebBrowser.ExecWB(6,1) type=button value=打印>
<input name=Button onClick=document.all.WebBrowser.ExecWB(6,6) type=button value=直接打印>
<input name=Button onClick=document.all.WebBrowser.ExecWB(7,1) type=button value=打印预览>
<input name=Button onClick=document.all.WebBrowser.ExecWB(8,1) type=button value=页面设置>
<input name=Button onClick=document.all.WebBrowser.ExecWB(10,1) type=button value=属性>
<input name=Button onClick=document.all.WebBrowser.ExecWB(17,1) type=button value=全选>
<input name=Button onClick=document.all.WebBrowser.ExecWB(22,1) type=button value=刷新>
<input name=Button onClick=document.all.WebBrowser.ExecWB(45,1) type=button value=关闭>
如果想要打印完毕之后关闭页面,通常的window.print()+window.close()没办法实现,打印完后窗口依然还存在。
想要实现该效果,就可以通过使用WebBrowser控件,通过调用它的6,6方法直接打印,然后在其后加上window.close()就可以了