示例说明
在仪表盘中,实现页面A跨页跳转到页面B,在页面B的报表标题后面增加一个返回按钮,实现页面A跨页跳转到页面B可以返回到A页面。
如下图,页面A可以跨页跳转到页面B(通过跳转规则实现):
如下图,在页面B的报表标题后面增加一个返回按钮,点击返回到页面A:
设置方法
- 在门户定制中,创建页面A和页面B, 要求使用跳转规则向导实现页面A跨页跳转到页面B。
- 切换到 定制—宏管理 页面,双击页面B进入报表宏界面。
- 在报表宏界面新建客户端模块。在弹出的新建模块对话框中选择对象为resourcelnPage;再选择页面上的报表资源simpleReport;再选择报表资源对象为;事件为onRenderTable;并把下面宏代码复制到代码区域;
宏类型
类型 | 对象 | 事件 |
ClientSide | resourcelnPage->simpleReport | onRenderTable |
宏代码 (请点击Expand source 查看具体宏代码)
function main(simpleReport, simpleReportContext) { //报表获取标题位置 var reportHeader1 = simpleReport.reportHeader; //创建返回按钮,及按钮样式 var btnElem1 = document.createElement("input"); btnElem1.type = "button"; btnElem1.title = "返回"; btnElem1.className = "button-buttonbar button-buttonbar-noimage"; btnElem1.value = "返回"; //btnElem.style.background = "url(./img/button/button_bgicon_auditpass.gif) no-repeat top center"; btnElem1.style.border = "1px solid #A1ACB9"; btnElem1.style.width = "37px"; btnElem1.style.padding = "1px 0 0 0"; btnElem1.style.margin = "0 12px 0 200px"; // debugger; btnElem1.onclick = function() { doClick(simpleReport, simpleReportContext); } //在报表标题区域内添加按钮 if (reportHeader1) { reportHeader1.appendChild(btnElem1); // reportHeader1.lastChild.appendChild(btnElem1); } } function doClick(simpleReport, simpleReportContext) { simpleReport.writeParamsToContext(); var targetResId = "I4028813957a114bf014b589e446c01b5"; //返回到的资源ID var newReport = false; //跨页跳转需要先获取参数值。 var paramsInfo = new Array(); //设置或收集参数值。 //打开新页面 var urlparams = "&browserType=ie&showPath=false"; //@smartbi.openOtherPage:"I402881397170e706014b717b57b50044" page.openResInCurrentWindow(targetResId, paramsInfo, urlparams); }
关键对象总结
- 新建button:document.createElement("input")