我正在尝试加载tableau仪表板,过滤器选项已经传入,javascript api正确地编码字符串,但当我的值中有,时,编码不能像预期的那样工作,仪表板不能加载应用的过滤器。
下面是这两个代码的比较
1)这样可以工作并加载仪表板,其中过滤操作符设置为Yuson Creek,并且url tableau api生成的是https://myurl&Operator=Yuson%20Creek&:apiID=host0#navType=1&navSrc=Parse。
tableauViz = new tableau.Viz(frameDiv[0], url, {
highdpi: true,
hideTabs: true,
hideToolbar: true,
width: "100%",
height: "100%",
"Operator": ["Yuson Creek"]
}); 2)此代码不起作用,过滤器值设置为"Abc,M.L. Corp.“并生成url https://myurl&Operator=Abc%2C%20M.L.%20Corp.&:apiID=host0#navType=1&navSrc=Parse。
tableauViz = new tableau.Viz(frameDiv[0], url, {
highdpi: true,
hideTabs: true,
hideToolbar: true,
width: "100%",
height: "100%",
"Operator": ["Abc, M.L. Corp."]
}); 当筛选值在字符串中有一个逗号时,url编码看起来不会按预期工作。我也尝试过传递像“Abc%2C+M.L.+Corp”这样的字符串。但它仍然不起作用。
当字符串值中有一个逗号时,我如何传递它。
在这方面的任何帮助都将非常感谢。谢谢。
发布于 2020-01-30 00:24:26
昨天,我使用Tableau API检索视图的图像时也遇到了同样的问题。通过在逗号前添加编码的转义字符解决了此问题。所以一个逗号在编码后变成了%5C%2C。
https://stackoverflow.com/questions/58379216
复制相似问题