js实现页面打印功能实例代码(附去页眉页脚功能代码)


Posted in Javascript onDecember 15, 2009
<html> 
<head></head> 
<style type="text/css" media="screen"> 
@media print{ 
.print {display:block;} 
.notPrint {display:none;} 
} 
</style> 
<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(); 
} 
</script> 
<body> 
<form id="WebForm1" method="post" > 
<center>本部分以上不被打印</center> 
<!--startprint--> 
<div align="center"> 
<asp:DataGrid id="dgShow" runat="server"> 
<!--省略部分代码--> 
</asp:DataGrid> 
<table> 
<tr><td>打印打印打印打印打印打印打印打印</td></tr> 
</table> 
</div> 
<!--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"> 
</form> 
</body> 
</html>

-------------
使用JS打印,
看代码
<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(); 
} 
</script>

这段代码,他是打印
<!--startprint-->和<!--endprint-->
这个标记之间的网页内容。
所以网页中要包含这个2个标签才行···
下面是去除页脚页眉的js代码
<script> 
var HKEY_Root,HKEY_Path,HKEY_Key; 
HKEY_Root="HKEY_CURRENT_USER"; 
HKEY_Path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\"; 
//设置网页打印的页眉页脚为空 
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) 
{} 
} 
PageSetup_Default(); 
</script>

注意有可能执行时,会出现没有效果的错误,这时原因是可能你的浏览器限制了active对象的创建,只要取消限制就好了,取消方法如下:

打开你的ie浏览器internet选项—— 安全—— 自定义级别—— 把对没有标记为安全的activex控件进行初始化和脚本运行 设置为启用
更多功能请参考三水点靠木现在用的代码。
http://img.3water.com/inc/content.js

Javascript 相关文章推荐
javaScript面向对象继承方法经典实现
Aug 20 Javascript
wap手机图片滑动切换特效无css3元素js脚本编写
Jul 28 Javascript
JavaScript参数个数可变的函数举例说明
Oct 10 Javascript
jQuery中parentsUntil()方法用法实例
Jan 07 Javascript
异步安全加载javascript文件的方法
Jul 21 Javascript
package.json文件配置详解
Jun 15 Javascript
使用JS实现气泡跟随鼠标移动的动画效果
Sep 16 Javascript
Bootstrap实现可折叠分组侧边导航菜单
Mar 07 Javascript
vue中使用echarts制作圆环图的实例代码
Jul 27 Javascript
vue请求服务器数据后绑定不上的解决方法
Oct 30 Javascript
微信小程序indexOf的替换方法(推荐)
Jan 14 Javascript
javascript数组includes、reduce的基本使用
Jul 02 Javascript
jQuery 渐变下拉菜单
Dec 15 #Javascript
多浏览器兼容的获取元素和鼠标的位置的js代码
Dec 15 #Javascript
讨论javascript(一)工厂方式 js面象对象的定义方法
Dec 15 #Javascript
查询绑定数据岛的表格中的文本并修改显示方式的js代码
Dec 15 #Javascript
jquery自动完成插件(autocomplete)应用之PHP版
Dec 15 #Javascript
Javascript attachEvent传递参数的办法
Dec 14 #Javascript
firefox下对ajax的onreadystatechange的支持情况分析
Dec 14 #Javascript
You might like
php长字符串定义方法
2012/07/12 PHP
PHP 自定义错误处理函数的使用详解
2013/05/10 PHP
phpmailer发送邮件之后,返回收件人是否阅读了邮件的方法
2014/07/19 PHP
php实现当前页面点击下载文件的实例代码
2016/11/16 PHP
详解提高使用Java反射的效率方法
2019/04/29 PHP
js获取单选按钮的数据
2006/11/27 Javascript
为JavaScript提供睡眠功能(sleep) 自编译JS引擎
2010/08/16 Javascript
jQuery晃动层特效实现方法
2015/03/09 Javascript
基于Jquery制作图片文字排版预览效果附源码下载
2015/11/18 Javascript
jquery UI Datepicker时间控件冲突问题解决
2016/12/16 Javascript
轻松理解JavaScript之AJAX
2017/03/15 Javascript
Vue.js仿Metronic高级表格(一)静态设计
2017/04/17 Javascript
vue的全局变量和全局拦截请求器的示例代码
2018/09/13 Javascript
jQuery实现侧边栏隐藏与显示的方法详解
2018/12/22 jQuery
解决layer.confirm快速点击会重复触发事件的问题
2019/09/23 Javascript
node.JS的crypto加密模块使用方法详解(MD5,AES,Hmac,Diffie-Hellman加密)
2020/02/06 Javascript
Python使用Matplotlib实现雨点图动画效果的方法
2017/12/23 Python
Python常见工厂函数用法示例
2018/03/21 Python
python处理multipart/form-data的请求方法
2018/12/26 Python
Python 互换字典的键值对实例
2019/02/12 Python
Python 获取项目根路径的代码
2019/09/27 Python
Django框架反向解析操作详解
2019/11/28 Python
python3 webp转gif格式的实现示例
2019/12/10 Python
Keras 数据增强ImageDataGenerator多输入多输出实例
2020/07/03 Python
python批量修改交换机密码的示例
2020/09/22 Python
python解包概念及实例
2021/02/17 Python
HTML5+CSS3应用详解
2014/02/24 HTML / CSS
设计毕业生简历中的自我评价
2013/10/01 职场文书
建筑工程技术应届生求职信
2013/11/17 职场文书
中央空调节能方案
2014/06/15 职场文书
环境保护标语
2014/06/20 职场文书
酒店员工辞职信范文
2015/02/28 职场文书
JS实现扫雷项目总结
2021/05/19 Javascript
matplotlib画混淆矩阵与正确率曲线的实例代码
2021/06/01 Python
解决Mysql的left join无效及使用的注意事项说明
2021/07/01 MySQL
python实现对doc、txt、xls等文档的读写操作
2022/04/02 Python