历史版本17 :JS自定义按钮实现报表块翻页 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. 问题描述编辑
有的时候我们不想刷新整个决策报表决策报表定时刷新JS,而只想刷新报表里的报表块。
报表里的报表块如何实现局部刷新?
同时报表里的报表块如何实现跳转到指定页?
2. 解决方案编辑
通过js来实现局部刷新和跳转到指定页。
this.options.form.getWidgetByName("repotname").gotoPage(pn, para, noCache)
参数 | 类型 | 说明 |
---|---|---|
pn | Number | 页序号,序号从1开始 |
para | JSON | 选填,跳转报表块页面时携带的参数 |
noCache | Boolean | 选填,true时跳转报表块不使用缓存,强制取新的数据 |
this.options.form.getWidgetByName("report0").gotoPage(2,"{month:12, name:'FR'}",true);
可以通过这段js实现。其中“report0",就是报表块的名称,这里指跳转到第2页,并传递参数$month的值为12,$name的值为FR,并且不使用缓存。
3. 示例编辑
3.1 报表块翻页
在button0按钮添加点击事件,JS代码如下:
this.options.form.getWidgetByName("report0").gotoPage(2,"{month:12, name:'FR'}",true);
点击button0按钮后,report0报表块跳转到第2页;并且报表中通过公式$month,$name正常获取到了参数值;
3.2 报表块局部刷新
在button1按钮添加点击事件,JS代码如下:
var form = this.options.form;
setInterval(function() {
form.getWidgetByName('report1').gotoPage(1,"{}",true);
}, 1000);