js-实现点击按钮直接打印

Posted lhh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js-实现点击按钮直接打印相关的知识,希望对你有一定的参考价值。

很多网站都有此功能 ,点击按钮 直接打印;最近做项目有个这样的需求, 所以就研究了一下,具体代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<title>指定被打印的内容</title>
<script language="javascript">
function print_fn(printname)
{
var newshtml = printname.innerHTML;
var oldshtml = document.body.innerHTML;
document.body.innerHTML =newshtml;
window.print();
document.body.innerHTML=oldshtml;
return false;
}
window.onload=function()
{
var button=document.getElementById("button");
var print=document.getElementById("print");
button.onclick=function()
{
print_fn(print);
}
}
</script>
</head>
<body>
<div id="print">
<h1>这是要被打印的内容</h1>
</div>
<div>欢迎您</div>
<input name="print" type="button" id="button" value="打印" />
</body>
</html>

加入上面的代码可以实现启动打印功能,但是有一个问题,只能执行一次打印 ,打印按钮失效 ,不仅打印按钮 若网页中还有其它按钮,所以按钮失效。

想要解决这个问题其实也很简单   window.print()之后,用location.reload()重新加载一下页面就好了,代码如下:

function print_fn(printname) 

var newshtml = printname.innerHTML; 
var oldshtml = document.body.innerHTML; 
document.body.innerHTML =newshtml; 
window.print(); 
document.body.innerHTML=oldshtml; 

location.reload();
return false; 

 










































以上是关于js-实现点击按钮直接打印的主要内容,如果未能解决你的问题,请参考以下文章

asp.net点击一个按钮 直接出来水晶报表pdf预览了

js直接打印pdf文件内容

如何实现报表直接打印需求

js 实现打印功能

HTML按钮点击事件

点击网页底部的top按钮直接回到网页顶部,怎么做?用js怎么表达