本文目录一览:
js浏览器打印设置打印次数
普通报表工具栏上有打印按钮,点击该按钮会弹出打印页面。
思路一:通过工具栏中的打印按钮,进行控制。设置全局变量--打印次数,如果打印次数为0,则直接打印,不再跳转到打印页面。或者在参数栏中新增一个打印按钮,在里面写JS脚本。不通过工具栏中的打印按钮实现这个功能。
思路二:在跳转的打印页面,只要点击一次打印按钮,则一方面执行打印指令,另一方面自动关闭打印页面。同时主模板自动刷新数据,重新加载打印次数为1。
思路三:在跳转的打印页面,获取全局变量--打印次数,如果为0,则打印按钮有效。否则打印按钮不可用,为灰色状态。
js调用浏览器的打印功能
最近做了个运用浏览器打印合同的功能,之前没做过,记录一下其中遇到的问题,打印页面建议使用新开窗口
原型图如下:
页面内容不多说,表格直接用table绘制,在页面顶部加一个悬浮的打印按钮。点击打印按钮调用打印机(ctrl+p)
实现的打印预览效果如下图:
谷歌浏览器可在打印预览-更多设置-选项中去除页眉和页脚的勾选
打印的页面不可出现横向滚动条,否则会出现打印出来的内容显示不全的问题。
请教一个在网页中js控制默认横向打印的问题
打印
一、普通打印(整页打)
这个不用多说,直接按CTRL+P或引用window.print();
二、打印网页内部分内容(自定义)
分三种方法实现
1、用css控制
引用:
@media print
.a {display:block}
.b {display:hidden}
把你不想打印的部分class设为b
首先在网页中添加:
引用:
OBJECT id="WebBrowser" height="0" width="0" classid="CLSID:8856F961-340A-
11D0-A96B-00C04FD705A2" VIEWASTEXT /OBJECT
然后就可以依次加入功能按钮了:
引用:
input type="button" value="打印" input type="button" value="直接打印"
input type="button" value="页面设置"
input type="button" value="打印预览" INPUT type="button" value="关闭窗口"
将这两块东西放到 center class=noprint /center 就不会打印这些按钮了。当然要定义noprint了:
style media="print" .Noprint { DISPLAY: none } /style 只要把不想打印的东西的css设置成noprint就可以了。
现在就实现了基本的web打印,需要注意的情况如下:
a. 必须将ie的internet选项的安全设置中对于没有标记为安全的ActiveX控件进行...设置成提示或者启用,否则会报错,导致不可用。
b. 如果在vs.net编辑环境下编辑该页面,它经常自动的给object添加多余的参数,有了这些东西,打印就会出错,所以要记得最后保存的时候删除它们。
2、用javascript打印固定标签内的内容
a、在页面的代码头部处加入JavaScript:
引用:
script language=javascript
function doPrint() {
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
b、在页面正文处加上 !--startprint-- 与 !--endprint-- 标识。
也就是在需要用户打印保存的正文所对应的html处附加上。同时,如果采用小偷程序获得远程数据并需打印,可将此等数据置于该定义标签之内即可。
c、截取内容部分已完成,现在加个“打印”的链接:
a href="javascript:;" 打印 /a
3、windows自带功能
按住鼠标的左键,将你想要打印的内容选定,然后单击右键选择“打印”,在弹出的打印对话框中的“页面范围”中选择“选定范围”就可以只打印你选择的内容了。
(三)打印去掉/添加页眉页脚
引用:
script language="JavaScript"
var hkey_root,hkey_path,hkey_key
hkey_root="HKEY_CURRENT_USER"
hkey_path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\"
//设置网页打印的页眉页脚为空
function pagesetup_null(){
try{
var RegWsh = new ActiveXObject("WScript.Shell")
hkey_key="header"
RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,"")
hkey_key="footer"
RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,"")
}catch(e){}
}
//设置网页打印的页眉页脚为默认值
function pagesetup_default(){
try{
var RegWsh = new ActiveXObject("WScript.Shell")
hkey_key="header"
RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,"wb页码,p/P")hkey_key="footer"
RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,"ubd")
}catch(e){}
}
/script
input type="button" value="清空页码" onclick=pagesetup_null()
input type="button" value="恢复页码" onclick=pagesetup_default()
复制出去,看下效果就可以了
使用Javascript怎样自动打印页面
1、js实现(可实现局部打印)
[html] view plain copy
input id="btnPrint" type="button" value="打印" onclick="javascript:window.print();" /
input id="btnPrint" type="button" value="打印预览" onclick=preview(1) /
style type="text/css" media=print
.noprint{display : none }
/style
p class="noprint"不需要打印的地方/p
script
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();
}
}
/script
pXXXXX/p
!--startprint1--要打印的内容!--endprint1--
再加个打印按纽 onclick=preview(1)
2、调用windows底层打印,报安全警告,不建议使用(不支持局部打印)
[html] view plain copy
HTML
HEAD
TITLEjavascript打印-打印页面设置-打印预览代码/TITLE
META http-equiv=Content-Type content="text/html; charset=gb2312" /
SCRIPT language=javascript
function printsetup(){
// 打印页面设置
wb.execwb(8,1);
}
function printpreview(){
// 打印页面预览
wb.execwb(7,1);
}
function printit()
{
if (confirm('确定打印吗?')) {
wb.execwb(6,6);
}
}
/SCRIPT
/HEAD
BODY
DIV align=center
OBJECT id=wb height=0 width=0
classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 name=wb/OBJECT
INPUT onclick=javascript:printit() type=button value=打印 name=button_print /
INPUT onclick=javascript:printsetup(); type=button value=打印页面设置 name=button_setup /
INPUT onclick=javascript:printpreview(); type=button value=打印预览 name=button_show /
一按开始的减肥了卡时间段
/DIV
/BODY
/HTML
3、jQuery实现(支持局部打印)
[html] view plain copy
script type="text/javascript" src="jquery-1.4.2.min.js"/script
script type="text/javascript" src="jquery.PrintArea.js"/script
script
$(document).ready(function(){
$("input#biuuu_button").click(function(){
$("div#myPrintArea").printArea();
});
});
/script
input id="biuuu_button" type="button" value="打印"/input
div id="myPrintArea".....文本打印部分...../div
js如何实现页面打印
HTMLHEADTITLEjavascript打印-打印页面设置-打印预览代码/TITLE
META http-equiv=Content-Type content="text/html; charset=gb2312" /
SCRIPT language=javascript
function printsetup(){
// 打印页面设置
wb.execwb(8,1);
}
function printpreview(){
// 打印页面预览
wb.execwb(7,1);
}
function printit()
{
if (confirm('确定打印吗?')) {
wb.execwb(6,6)
}
}
/SCRIPT
/HEAD
BODY
DIV align=center
OBJECT id=wb height=0 width=0
classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 name=wb/OBJECT
INPUT onclick=javascript:printit() type=button value=打印 name=button_print /
INPUT onclick=javascript:printsetup(); type=button value=打印页面设置 name=button_setup /
INPUT onclick=javascript:printpreview(); type=button value=打印预览 name=button_show /
/DIV
/BODY
/HTML