zoukankan      html  css  js  c++  java
  • JS调用水晶报表打印翻页按钮事件

    默认的水晶报表打印按钮、翻页按钮太小,并且样式不好调整,考虑自己做一个按钮,然后调用水晶报表的按钮事件。

    在实际操作中发现可以在.net按钮的服务器端事件中调用翻页方法;

    CrystalReportViewer1.ShowPrevious();  //上一页
    CrystalReportViewer1.ShowFirst(); //第一页
    CrystalReportViewer1.ShowNext(); //下一页
    CrystalReportViewer1.ShowLast(); //最后一页


    然而没有发现打印方法。在CS的水晶报表中有打印方法,但是在BS中没有该方法。

    
    
    CrystalReportViewer1.ShowPrint();  //CS端的打印功能。

    找了很多资料都没有发现BS端打印方法。

    最后想起用JS直接调用水晶报表的按钮事件。用Chrome追踪源码发现水晶报表的几个按钮ID是固定格式。

    直接查找到该按钮然后调用click事件就可以实现该功能。

    HTML代码

    <div>
        <input id="Button2" type="button" value="上一页" onclick="return doReportButon('prevPg');" />
        <input id="Button3" type="button" value="下一页" onclick="return doReportButon('nextPg');" />
        <input id="Button5" type="button" value=" 打印 " onclick="return doReportButon('print');" />
    </div> 

    JS代码,

    <script language="javascript" type="text/javascript">   
    //<![CDATA[
        //js调用水晶报表按钮点击事件
        function doReportButon(btnName) {
            var buttonName = "IconImg_CrystalReportViewer1_toptoolbar_" + btnName;
            var buttonPrint = document.getElementById(buttonName);
            buttonPrint.click();
            return false;
        }
        $(function ($) {
            $("#CrystalReportViewer1_toptoolbar_print").hide();
            $("#CrystalReportViewer1_toptoolbar_prevPg").hide();
            $("#CrystalReportViewer1_toptoolbar_nextPg").hide();
            $("#CrystalReportViewer1_toptoolbar_export").hide();
        });
        //]]>
    </script>

    注意:水晶报表的按钮图标是由Table嵌套的,
       因此图标的名称前缀有一个IconImg_CrystalReportViewer1_toptoolbar_  ,它所对应的Table的ID为前缀是:CrystalReportViewer1_toptoolbar。在调用按钮事件时必须水晶报表允许产生该按钮,在界面上隐藏它。否则水晶报表不会产出该按钮,并且找不到该按钮的事件。

  • 相关阅读:
    Discuz上传错误
    Node.js程序在node-windows中不能运行
    如何开机就启动node.js程序
    创建并发布node.js module
    Windows下安装mongodb
    Grunt学习一:使用grunt创建jquery plugin.
    如何用 Jquery实现OuterHtml
    VS2008中生成DLL项目
    C++变量未进行初始化时的默认值
    C++的四种初始化形式以及类型转换
  • 原文地址:https://www.cnblogs.com/coolsundy/p/4878271.html
Copyright © 2011-2022 走看看