1,可以用嵌入ie中的word,excel实现,如果你的服务器是tomcat
word:
文件头上加:<%@  page  contentType=  "application/msword  "  %  >  
tomcat\conf\web.xml里:
<mime-mapping>
        <extension>doc</extension>
        <mime-type>application/msword</mime-type>
    </mime-mapping>
excel:
文件头上加:<%@ page contentType="application/vnd.ms-excel" %>
tomcat\conf\web.xml里:
<mime-mapping> 
<extension>xls</extension> 
<mime-type>application/msexcel</mime-type> 
</mime-mapping>
2.直接调用windows函数
<input type="button" value="print" 
onclick="window.focus();window.print()">3.调用js 
//放在head 与 head 之间
<SCRIPT LANGUAGE=javascript>
<!--
function setPrint()
{
WB.ExecWB(8,1);
}
function previewPrint()
{
WB.ExecWB(7,1)
}
//-->
</SCRIPT>
 
//放在body与body之间
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0>
</OBJECT>
<INPUT type="button" value="打印设置" id=button1 name=button1 onclick="setPrint();">
<INPUT type="button" value="打印预览" id=button2 name=button2 onclick="previewPrint();">
4,如果要求很高,就用专业报表工具,不过价格不便宜

解决方案 »

  1.   

    但是不是只能在HTML页面实现,而在存在ASP代码的页面无法实现?我曾作了个实验,好像不行!
      

  2.   

    我试过了,1、3中方法不太好用,第二中方法好用,但是是打印的整个页面
    如果页面中有一张表名为t1的表,我该怎样打印呢。
     我是这样该的<input type="button" value="print" onclick="t1.focus();t1.print()">
     但是告诉我网页上有错误,怎么办?
      

  3.   

    <style>
    @media print {
       .ptn {display:block;}   
       .notptn {display:none;}
    }
    </style>
    <div class="notptn"> 不打印</div><div class="ptn"> 打印</div>
      

  4.   

    如果是比较规则的报表输出,可以选中表格,按“Ctrl+C”复制,然后到Excel按“Ctrl+V”粘贴即可粘贴过去,而且字体、颜色均不改变,可以在页面上加一提示,提示用户按此方法打印!
      

  5.   

    我又试了好几次,如果我用<div class="notptn"> 把不打印的内容包含进去的话,那么什么也没有打印,如果我不用<div class="notptn"> 而只用<div class="ptn"> 把要打印的内容包含的话,就打印了整个网页。   怎么回事呀?