开发程序时遇到这样一个问题,后台录入的数据在前台需要使用<ww:property >标签将这些内容显示出来,但是却发现显示的内容都堆在了一起,输入时的换行信息等都显示不出来了。
经过研究发现<ww:property >标签不能将换行信息显示出来,必须要进行属性设置escape="false",然后再将输出的内容进行html的转义,就可以显示出换行等信息了
我的代码如下:
1.前台显示:<ww:property value="faqForm.content" escape="false" />
2.faqForm.setContent(StringUtils.toHtml(faqForm.getContent()));
其中的toHtml方法如下:
public static String toHtml(String str) {
if (str == null)
str = "";
String html = str;
html = replace(html, "&", "&");
html = replace(html, "<", "<");
html = replace(html, ">", ">");
html = replace(html, "/r/n", "/n");
html = replace(html, "/n", "<br>");
html = replace(html, "/t", " ");
html = replace(html, " ", " ");
html = replace(html, "/"", """);
return html;
}