您的位置:首页 > Web前端 > JavaScript

页面局部打印(js方法)

2013-03-15 09:17 232 查看
最近在做项目时候,遇到一个打印页面局部的功能,网上看了些,大体都一样,以下是代码:

<script type="text/javascript">

仅仅打印标签部分

function printTag2() {

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-->

<s:property value="vehicleFile.motorVehicleFiles.ownerName"/><br/>

<s:property value="vehicleFile.motorVehicleFiles.vehicleType.vehicleTypeName"/>  <s:property value="vehicleFile.motorVehicleFiles.licensePlateNumber"/>  <s:property value="vehicleFile.motorVehicleFiles.dabh"/><br/>

<s:property value="_MotorCehicleType.motorCehicleTypeName"/><br/>

<s:property value="vehicleFile.ccbh.archivesAddress"/><br/>

<img src=\'#\'" /<s:property value="url" />"

width="120" height="30" onclick="printTag2();" /><br/>

V <s:property value="vehicleFile.vehicleFileID"/><br/>

<!--endprint-->

以上功能是可以实现局部打印的,但是有个疑问,就是这段代码:window.document.body.innerHTML = prnhtml;

功能是让页面只显示<!--startprint-->和<!--endprint-->标签包含的内容,但是有的时候不想把其他的内容不显示怎么办呢?

我试过一个办法 就是把这句注释了:

window.document.body.innerHTML = prnhtml;

但是注释了 这句,打印出来的就是整个页面了。

求大神赐教!
本文出自 “我的技术累计” 博客,请务必保留此出处http://liuguicheng.blog.51cto.com/6247902/1154630
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: