通常,开发人员在向顶点报告添加换行符时会遇到问题。特别是在处理内容行时。
example of the issue
这里有一个快速解决方案。
1.查找报表区域的内容行选择器。在我的例子中,class=“t-ContentRow-description”
1.添加JavaScript以替换\n到
在页面加载Adding Javascript to Page Loadlet elements = document.querySelectorAll('.t-ContentRow-description'); elements.forEach(function(element) { // Replace newline characters with <br> let updatedContent = element.textContent.replace(/\n/g, '<br><br>'); element.innerHTML = updatedContent; });
after the fix
谢谢你以后:-)
默认情况下,apex不允许在报表区域上呈现html标记,因此像REPLACE(REPLACE(OUTCOMES, CHR(13)||CHR(10), '<br/>'), CHR(10), '<br/>')
这样的pl/sql代码将无法工作,并将导致显示
添加一个换行符
2条答案
按热度按时间9nvpjoqh1#
作为概述,这里有几个选项可以在报表中呈现换行符(请随意添加):
来源查询:
经典报表
*列的HTML表达式属性
*css class
在页面或文件中定义css类内联
更多关于css here中的换行符
然后在列属性中添加CSS类
*替换SQL和转义特殊字符
见@Littlefoot回答
交互报表
*列的HTML表达式属性(同经典)
*css class
css类不能分配给列,但可以在html表达式中引用。
*替换SQL和转义特殊字符
见@Littlefoot回答
交互网格
*css class
对列使用列名JavaScript函数
*替换SQL和转义特殊字符
由于IG中没有“转义特殊字符”,因此需要使用列转义JavaScript函数:
ac1kyiln2#
谢谢你以后:-)
以后就是现在,所以-谢谢。
我创建了一个包含两列
ID
和TEXT
的测试表,其中存储在该列中的文本如下所示:默认情况下,如果您不做任何事情,输出(在一个经典报告中;你没有指定你的开发人员使用的 * 哪个 * 报告)看起来像你的截图显示的那样-所有内容都进入同一行:
将CRLF替换为
<br>
标签的查询:输出不会更改,除非您导航到
TEXT
列的属性并切换Escape special characters属性OFF。再次运行报告,输出正常:切换到互动报表;在相同属性关闭的情况下:
因此,是的-谢谢你的分享,但有一个更简单的方法来做到这一点。把这个问题的链接(实际上是答案)发给你的开发人员,也许他们会觉得有用。