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="上一页" οnclick="return doReportButon('prevPg');" />
    <input id="Button3" type="button" value="下一页" οnclick="return doReportButon('nextPg');" />
    <input id="Button5" type="button" value=" 打印 " οnclick="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。在调用按钮事件时必须水晶报表允许产生该按钮,在界面上隐藏它。否则水晶报表不会产出该按钮,并且找不到该按钮的事件。

 

转载于:https://www.cnblogs.com/coolsundy/p/4878271.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值