注意 | ||
---|---|---|
| ||
本文档的示例代码仅适用于本文档中的示例报表/场景。若实际报表/场景与示例代码无法完全适配(如使用功能不一致,或多个宏代码冲突等),需根据实际需求开发代码。 |
示例说明
在仪表盘中,实现页面A跨页跳转到页面B,在在页面B的公共参数后面增加一个返回按钮,实现页面A跨页跳转到页面B可以返回。
如下图,页面A可以跨页跳转到页面B(通过跳转规则实现):
如下图,页面B公共参数后面有返回按钮,点击返回到页面A:
设置方法
...
宏代码 (请点击Expand source 查看具体宏代码)
代码块 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
function main(page, pageContext) { var paramTableRows = page.paramPanel.layoutTable.rows; var row1 = paramTableRows[paramTableRows.length - 1]; var cell = row1.insertCell( - 1); var btn = document.createElement("input"); btn.value = "返回"; btn.type = "button"; btn.className = "button-buttonbar button-buttonbar-noimage"; cell.appendChild(btn); page.elemParamPanel.style.display = ""; page.addListener(btn, "click", doBack, [page, pageContext]); } function doBack() { var page = this[0]; var pageContext = this[1]; var targetResId = "I000000003ea113db013f60575c603a75"; //跨页跳转需要先获取参数值。 var paramsInfo = new Array(); //设置或收集参数值。 //debugger; //var pObj = simpleReportContext.get("company"); //通过参数名称获取参数对像 //var pObj = page.getParamValueByName("company"); //通过参数名称获取参数对像 //if (pObj) { // var paramInfo = createParamInfo("company", pObj.value, pObj.displayValue); //填冲参数 //paramsInfo.push(paramInfo); //} pageContext.openPageById(targetResId, paramsInfo); } //创建参数信息 function createParamInfo(name, value, disValue, mergeType) { var paramInfo = new Object(); paramInfo.name = name; paramInfo.value = value; paramInfo.displayValue = disValue; if (mergeType) paramInfo.groupType = mergeType; return paramInfo; } |
...