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。在调用按钮事件时必须水晶报表允许产生该按钮,在界面上隐藏它。否则水晶报表不会产出该按钮,并且找不到该按钮的事件。
JS调用水晶报表打印翻页按钮事件的更多相关文章
- vb 水晶报表打印
vb里面的水晶报表打印控件:CrystalReportViewer 用到的dll文件: 水晶报表打印其实很简单,只要创建报表对象,再对其传递数据就可以打印出来.当然所传递的数据要与水晶报表设计里面的数 ...
- 解决Hexo博客模板hexo-theme-next的翻页按钮不正常显示问题
用Hexo搭了个Gitpage的博客,兴冲冲的发了11篇博文后发现翻页按钮不正常显示,显示为<i class="fa fa-angle-right"></i> ...
- FineReport——JS二次开发(自定义翻页按钮)
FR允许自定义工具栏上面的按钮,并提交JS方法: 对于翻页功能,大概有首页,下一页,上一页,最后一页,以及跳转页等功能. 不得不说的是,在HTML页面自定义的按钮如何获取到报表模板,通过FR提供的JS ...
- ASP.NET Dev ASPxGridView控件使用 ASP.NET水晶报表打印
1.ASPxGridView控件使用 2.ASP.NET水晶报表客户端打印 3.javascript打印 4.ASPxGridView根据Textbox查询 5. ASPxGridView 列宽 1. ...
- turn.js中文API 写一个翻页效果的参数详细解释
$('.flipbook').turn({ width: 922, height: 600, elevation: 50, gradients: true, a ...
- js + jquery 实现分页区翻页
简单来说,情况是这样的,假如做好了对动漫每一集进行分页,如下图: 但当分页太多就会变得不能看,而且前后箭头也不能只是摆设. 想要得到类似这样效果: 网上搜了一会翻页相关的库没什么效果,也不太合适自己的 ...
- 在web界面调用水晶报表导出文件时莫名错误
原因是水晶报表未破解版有字段限制,不能超过90(具体个数没仔细测)个字段. 建议那些select *的朋友检查一下字段个数
- VS2008水晶报表变两页(重装系统后)
找到水晶报表中的设置-打印机设置,发现打印机名称是 Microsoft XPS Document Writer (已重定向2),
- js监听微信、支付宝返回,后退、上一页按钮事件
$(function(){ pushHistory(); window.addEventListener("popstate", function(e) { alert(" ...
随机推荐
- 算法系列:geometry
1.基本几何变换及变换矩阵 基本几何变换都是相对于坐标原点和坐标轴进行的几何变换,有平移.比例.旋转.反射和错切等. 1.1 平移变换 是指将p点沿直线路径从一个坐标位置移到另一个坐标位置的重定位过程 ...
- CentOS下用yum配置php+mysql+apache(LAMP)
#安装需要的包,有依赖关系,自动帮你解决 yum install httpd mysql mysql-server php php-gd php-mbstring php-mysql #启动httpd ...
- apk 打包方式
1 项目-->Android tools -->Export Signed Application Package 2 在项目 manifest.xml文件下 单击“use the Ex ...
- [Liferay6.2]Liferay入门级portlet开发示例
什么是Portlet 来自百度百科(http://baike.baidu.com/view/58961.htm)的定义如下: portlet是基于java的web组件,处理request并产生动态内容 ...
- barabasilab-networkScience学习笔记6-evolving networks
第一次接触复杂性科学是在一本叫think complexity的书上,Allen博士很好的讲述了数据结构与复杂性科学,barabasi是一个知名的复杂性网络科学家,barabasilab则是他所主导的 ...
- NSArray 所有基础点示例
#import <Foundation/Foundation.h> //排序算法,应用于 NSArray *arr=[arrs1 sortedArrayUsingFunction:sort ...
- Android自动化压力测试之Monkey Test 异常解读(五)
monkey结果分类 monkey结果详细解读 monkey运行log输出后,得读懂日志内容,定位错误 lgo日志顺序输出分别为 测试命令信息.随机事件流(11种事件).异常信息(anr.crash ...
- 如何在Crystal Portlet中正确返回JSON数据给AJAX请求?
当Crystal Portlet中需要采用Ajax请求,并让后台返回Json数据时,如何才能正确.方便的返回Json数据呢? 以下两种方法均可: 方法一:Ajax请求时,采用RenderURL,对应P ...
- a与a:link、a:visited、a:hover、a:active
原文地址http://www.cnblogs.com/exmyth/p/3226654.html a与a:link.a:visited.a:hover.a:active 起因: a与a:link的 ...
- 2016.9.13 JavaScript入门之六基础函数
1.Math.random()函数: 2.math.floor(x)返回小于参数x的最大整数,即对浮点数向下取整. 例如:random本身只产生(0~1)之间的小数,random()*10 意思是产生 ...