╃小〥斌╄
二十三年春秋梦,一朝秋雨人初醒。 几曾磨剑图破壁,而今励志待明朝。 莫道红颜无我辈,古来坦途有几人? 英雄何惧前途路,丈夫岂会不腾达!
posts - 291,comments - 624,trackbacks - 8

循环打印div中的内容:
<input type="button" onClick="javascript:printpage('myDiv');" value="打印">
流程:
从数据库中取出记录-》放入aspx页面的一个Div中打印
例子:
在aspx中定义一个DIV,如:
<div id="myDiv">  
     <table border="0"  width="100%">
         <tr>
         <td>
        <table align="center" border="0" cellpadding="5" cellspacing="1"
            width="100%" class="test">
          <tr bgcolor="#CDD9F1" align="center">
            <td height="22" colspan="2" valign="middle">凭证</td>
          </tr>
        </table>
         </td>
    </tr>
    </table>
</div>
在apsx中定义一个按钮,按下事件触发
printpage('myDiv);
Printpage方法如下(javascript):
function printpage(myDiv){
   var newstr = document.all.item(myDiv).innerHTML;
   var oldstr = document.body.innerHTML;
   document.body.innerHTML = newstr;
   window.print();
   document.body.innerHTML = oldstr;
   return false;
}

******************************************************************************************************
<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 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){}
}
</script>
<input type="button" value="清空页码" onclick=PageSetup_Null()>
<input type="button" value="恢复页码" onclick=PageSetup_Default()>

posted on 2004-12-08 15:58 ╃小〥斌╄ 阅读(3132) 评论(7)  编辑 收藏 所属分类: 打印专栏

FeedBack:
#1楼 [楼主]
2005-03-09 16:24 | -╃小〥斌-╃      
用第二种方法的时候 var Wsh=new ActiveXObject("WScript.Shell");
会抛出异常 ~客户端缺少对象。
  回复  引用  查看    
2006-05-26 17:41 | ranksun [未注册用户]
WScript.Shell 是windows 内置的,
你出现异常可能是IE安全级别比较高,把安全级别调低再试试,
  回复  引用  查看    
2006-06-27 16:27 | java九段 [未注册用户]
要实现对纸张纵,横控制,可以使用免费的web打印控件,该控件功能特点:

1. 免费
2. 小巧,整个控件只有90k。
3. 对网页实现打印,这使得您用frontpage,dreamwaver,及任何cgi程序就可以来设计套打。
4. 可以打印预览。
5. 支持javascript设置打印参数,如输出打印机,页型,打印方向等。
6. 某一票据的打印时打印参数自动保留,待下一次打印同一票据时,自动设置,这使客户端也可以控制打印参数。
7. 可以不显示票据,直接指定票据的url,进行打印。
8. 支持票据及其附件的批量打印。
9. 可以取得本机中的可用打印机,可用纸张类型列表,帮您设计出更友好的参数设置界面。
10. 与您项目采用的技术标准无关,j2ee,.net项目均可。

丰富文档及示例,火热下载中 http://print.jatools.com
  回复  引用  查看    
2006-11-29 07:57 | yunhuasheng      
好!
  回复  引用  查看    
2007-06-14 11:29 | web报表      
全面的web打印解决方案,见: http://www.fcsoft.com.cn
  回复  引用  查看    
2007-06-20 13:43 | 明明 [未注册用户]
很遗憾,楼主的方法不能适用于分页情况!
  回复  引用  查看    
2008-06-30 12:27 | Pazu [未注册用户]
推荐使用四方在线的WEB打印控件
http://www.4fang.com/tech.html 中的1.4.1章节


演示:

http://www.laputac.com/tech/pazudemo2.htm


支持vista系统

www.4fang.net
四方财务软件--简单实用的就是最好的
  回复  引用  查看    

标题  
姓名  
主页
Email (只有博主才能看到) 
验证码 *  看不清,换一张
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2005-01-19 15:45 编辑过
 
另存  打印
最新IT新闻:
· 56被关一月 危机的是整个视频业
· 李开复:中文搜索是谷歌战略核心
· 《星际争霸2》新图:黑暗圣堂武士Zeratul
· FriendFeed介绍
· 微软在台北发布新色鼠标产品