报表和aspx结合后在aspx页面实现工具栏的方法
现在有好多客户在.net中用到了快逸报表,主要方法是把报表部署在一个j2ee应用中,.net部署在IIS中,把报表嵌入到aspx页面中的iframe里面。如果原本aspx页面中一些按钮或者工具,报表页面也有一个工具栏,如何让两部分的工具栏集合在一起呢。下面介绍一种把报表的工具栏迁移到aspx页面的方法。
首先要在aspx页面中得到iframe的对象,然后通过这个对象得到发布报表tag标签中的name属性值,得到name后就可以调用快逸提供的js方法实现保存、导出word、导出pdf、导出excel、上一页、下一页等功能了。下面列出代码演示一下
发布报表的标签(jsp页面中)
<report:html name=”report1″ //注意标签中name的属性值,在aspx页面中会用到
reportFileName=”<%=report%>”
funcBarLocation=”"
needPageMark=”yes”
generateParamForm=”no”
needLinkStyle=”yes”
params=”<%=param.toString()%>”
exceptionPage=”/reportJsp/myError2.jsp”
/>
Aspx页面代码
<head>
<table id=titleTable width=100% cellspacing=0 cellpadding=0 border=0 ><tr>
<td height=”22″ width=100% valign=”center” style=”font-size:13px”>
<table width=”100%”><tr>
<td width=53% align=”center” style=”font-size:13px” >
<td width=”47%” align=”center” valign=”middle” style=”font-size:12px” >
<!–返回到最前页,先得到发布报表tag标签中name属性值,然后用快逸提供的toPage函数–>
<a href=’#’ onClick=’try{document.frames.reportFrame.report1_toPage( 1 );}catch(e){}return false;’>最前页</a>
<!–到上一页–>
<a href=’#’ onClick=’try{document.frames.reportFrame.report1_toPage(document.frames.reportFrame.report1_getCurrPage()-1);}catch(e){}return false;’>上一页</a>
<!–到下一页–>
<a href=’#’ onClick=’try{document.frames.reportFrame.report1_toPage(document.frames.reportFrame.report1_getCurrPage()+1);}catch(e){}return false;’>下一页</a>
<!–到最后一页–>
<a href=’#’ onClick=’try{document.frames.reportFrame.report1_toPage(document.frames.reportFrame.report1_getTotalPage());}catch(e){}return false;’>最后页</a>
<!–保存的按钮–>
<a href=”#” onClick=”document.frames.reportFrame.report1_save();return false;”>保存</a>
<!–导出excel的按钮–>
<a href=”#” onClick=”document.frames.reportFrame.report1_saveAsExcel();return false;”>导出excel</a>
<!–导出word的按钮–>
<a href=”#” onClick=”document.frames.reportFrame.report1_saveAsWord();return false;”>导出word</a>
<!–导出pdf的按钮–>
<a href=”#” onClick=”document.frames.reportFrame.report1_saveAsPdf();return false;”>导出pdf</a>
</td>
</tr></table>
</td></tr>
</table>
</head>
<body>
<% //访问报表的局域网路径
String url = “http://127.0.0.1:6001/demo/reportJsp/test.jsp?raq=/report_1.raq”;
%>
<!–嵌入的iframe–>
<iframe src=”<%=url%>” frameborder=“0“
id=”reportFrame” name=”reportFrame” scrolling=”yes” height=”100%” width=”100%”></iframe>
</body>
总结:如果以后要在asp想上发布快逸报表就可以按照上面的方法实现了,报表的功能条还能放在asp想页面上。
报表和aspx结合后在aspx页面实现工具栏的方法的更多相关文章
- Spring Boot 打war包后自定义404页面不生效解决方法
最近做一个项目,自定义了404页面,本地测试可以到自定义页面,但是打包放到tomcat里面就不行.搞了一天终于看到一个比较正确的方法.下面附上连接,非常感谢各位博主们 1.https://blog.c ...
- 用juery的ajax方法调用aspx.cs页面中的webmethod方法示例
juery的ajax调用aspx.cs页面中的webmethod方法:首先在 aspx.cs文件里建一个公开的静态方法,然后加上WebMethod属性,具体实现如下,感兴趣的朋友可以参考下哈,希望对大 ...
- Html中设置访问页面不在后进行其他页面跳转
Html中设置访问页面不在后进行其他页面跳转 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" & ...
- 关闭rdlc报表打印预览后,关闭客户端,抛出异常“发生了应用程序级的异常 将退出”
问题:关闭rdlc报表打印预览后,关闭客户端,抛出异常“发生了应用程序级的异常 将退出” 办法:在容纳ReportViewer的窗体后台代码中,添加如下代码即可 protected override ...
- jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法
博客分类: jquery-easyui jQueryAjax框架HTML 现象: AJAX返回的html无法做到自动渲染为EasyUI的样式.比如:class="easyui-layout ...
- angular4.0项目build发布后,刷新页面报错404
angular4.0项目执行npm run build后,进入页面正常显示. 但是当刷新页面时,报错404,页面未找到. 出现这个问题的原因,应该是找不到路由地址导致的,然后找到了下面的解决方案. 找 ...
- ScrollView嵌套ListView后,进入页面不从顶部开始显示的问题解决
ScrollView嵌套ListView后,进入页面不从顶部开始显示的问题解决 首先,正常情况下,如果在ScrollView里嵌套ListView后,会发现ListView只显示1条数据 那么,为了解 ...
- Ionic3关闭弹出页面,跳转到列表后刷新父页面
记得上次写过一篇如何弹出页面的文章,好像是2月28号ionic3 Modal组件那一篇,这篇也算那一篇的续集吧!这篇是弹出的页面关闭后刷新父页面的干活!上代码! 弹出页面:(关闭的时候可以传入值,再父 ...
- Tomcat启动后,访问页面报404错误解决方法
Tomcat正常启动后,出现如下情况 提供一个参考解决方法: 1.双击servers 2.把Server Locations设置为User Tomcat installation 保存后再次访问页面就 ...
随机推荐
- git使用时的一下简单命令
一.简介 SVN集中式版本控制系统 分布式版本控制系统 二.使用git 1.git init 将这个命令变成git可管理的仓库 2.git add filename 将这个文件添加到仓库 3.git ...
- 极光推送android sdk集成步骤
推送,用极光,大家都说好,哈哈. 进入正题: 1.确认android studio的 Project 根目录的主 gradle 中配置了jcenter支持.(基本上现在都已经支持了,循例说一下) , ...
- javascript技巧总结
1.删除前后空格 String.prototype.trim = function () { return this.replace(/(^[ | ])|([ | ]$)/g, "" ...
- Integer.parseInt() 和 valueOf()
parseInt("1")返回的是int类型,所以如果想要将一个String类型的数字串转为原始类型int ,建议使用这个方法, 而不是使用 valueOf("1&quo ...
- Linux套接字和I/O模型
目录 1. socket套接字的属性.地址和创建 2. 如何使用socket编写简单的同步阻塞的服务器/客户端 3. 理解Linux五种I/O模型 1.socket ...
- SpringMvc注解开发
1.四大注解的定义 (1)Controller注解:该注解使用在一个类上面,参数为value,值为访问该controller的名称,默认为空,如果为空 则值为该controller类名的首字母小写的值 ...
- redis集群与分片(2)-Redis Cluster集群的搭建与实践
Redis Cluster集群 一.redis-cluster设计 Redis集群搭建的方式有多种,例如使用zookeeper等,但从redis 3.0之后版本支持redis-cluster集群,Re ...
- ruby 数组操作
数组的创建 arr = Array.new num #创建num个元素的数组,所有数组元素为nil arr = Array.new num, elem #创建num个元素的数组,所有数组元素为elem ...
- npm run build之后生成的dist如何扔到服务器运行(npm run build之后如何本地运行)
运行npm run build之后,会生成一个dist文件夹,里面的目录结构大概是这样的: 生成完的文件我们怎么来运行呢?直接在本地打开inde.html是无法运行的,打包的时候有提示: 构建文件应该 ...
- CodeBlocks "no such file or directory" 错误解决方案(创建类找不到头文件)
在CodeBlocks下,有时候需要自己定义类,当然就要添加相应的头文件,但添加进去的头文件明明包含在项目中了, 但编译时还是会报错:no such file or directory;这是为什么呢? ...