(本文档仅供参考)
问题
通过定义宏代码实现跳转并且传参,由于参数存在中文导致跳转失败,如何堆参数进行base64转码?
解决方案
验证版本:V10.5.8
(由于浏览器对于url的长度有限制,不建议把参数拼接到url上,建议采用post方式进行传参。
function main(spreadsheetReport, isAjaxRefreshCallback) { debugger; let params = [{ name: 'ShipRegion', alias: 'ShipRegion', value: "华北", displayValue: "华北" }] var base64ParamString = util.base64encode(util.utf16to8(JSON.stringify(params))); base64ParamString = encodeURIComponent(base64ParamString); console.log("编码后:" + base64ParamString) var href1 = "http://10.10.202.37:35108/smartbi/vision/openresource.jsp?paramsInfoBase64=" + base64ParamString + "&resid=I8a74a404018fdc33dc33fc9e018fdcc9ae3024c7" console.log("编码后:" + href1) }