web ..研究

本文介绍了三种实现网页打印的方法:通过HTML代码直接调用打印功能、利用IE内置的打印功能进行扩展、以及结合JavaScript进行更复杂的打印操作。这些方法能够满足不同场景下的需求,如简单数据打印或对打印效果有特定要求的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  
1、HTML代码中加入
<a href="javascript:window.print()">打印</a>
或者:
    <a onclick="javascript:window.print()"><input type="button" value="打印"/></a>
 
2、直接利用IE的打印功能。一般来说,这种方法可以做些扩展,而不是单单的调用javascript:print()这样简单,比如,可以使用如下代码:
  
  <object id="WebBrowser" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height="0" width="0"></object>
<input type="Button" onclick="document.all.WebBrowser.ExecWB(6,1)" value="打印" />
<input type ="Button" onclick="document.all.WebBrowser.ExecWB(6,6)" value="直接打印" />
<input type ="Button" onclick="document.all.WebBrowser.ExecWB(8,1)" value="页面设置" />
  <input type ="Button" onclick="document.all.WebBrowser.ExecWB(7,1)" value="打印预览" />
  
  这种方法可以适用于简单的数据打印,对系统要求不高,但不足之处在于可以控制的能力比较差,比如处理分页等问题。
------------------------------------------------ 
  关于这个组件还有其他的用法,列举如下: 
  WebBrowser.ExecWB(1,1) 打开 
  ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口 
  ExecWB(4,1) 保存网页 
  ExecWB(6,1) 打印 
  ExecWB(7,1) 打印预览 
  ExecWB(8,1) 打印页面设置 
  ExecWB(10,1) 查看页面属性 
  ExecWB(15,1) 好像是撤销,有待确认 
  ExecWB(17,1) 全选 
  ExecWB(22,1) 刷新 
  ExecWB(45,1) 关闭窗体无提示 
 
3   <title>无标题页</title>
    <script language="javascript" type="text/javascript"> 
  function printsetup(){ 
  // 打印页面设置 
  wb.execwb(8,1); 
  } 
function printpreview()
  // 打印页面预览 
wb.execwb(7,1); 
  function printit() 
  { 
  if (confirm('确定打印吗?')) { 
  wb.execwb(6,6) 
  } 
  } 
  </script>   
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <%--
        <a href="javascript:window.print()">打印</a>
        <a onclick="javascript:window.print()"><input type="button" value="打印"/></a>
        --%>
        <a href="javascript:window.print()">打印</a>
        <a onclick="javascript:window.print()"><input id="wb" name="wd" type="button" value="打印"/></a>
 
3、protected void Button1_Click1(object sender, EventArgs e)
    {
        Response.ContentType = "application/vnd.ms-excel";   //设置输出文件类型为excel文件。
        Response.Charset = "GB2312"; //设置了类型为中文防止乱码的出现     Response.AppendHeader("Content-Disposition","attachment;filename="+Request.Form["excel"].Trim()+".xls"); //定义输出文件和文件名
//Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");//设置输出流为简体中文
     this.EnableViewState = false;
     System.IO.StringWriter sw = new System.IO.StringWriter();
     System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);
     int nCur = this.dgCommunicate.CurrentPageIndex;
     int nSize = this.dgCommunicate.PageSize;
 
              this.btnClose.Visible = false;
              this.btnExcel.Visible = false;
              this.dgCommunicate.AllowPaging = false;
              Bind();
    }
    public void Bind()
     {
         //接收页面传来的字段
         CommunicateInfo.UI_Department = Request.QueryString["parameter1"].ToString();
         CommunicateInfo.UI_Post = Request.QueryString["parameter2"].ToString();
         //绑定数据源
         this.dgCommunicate.DataSource = bcCommunicate.SelectComInfo(CommunicateInfo).Tables[0];
         this.dgCommunicate.DataBind();           
     }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值