jstl fn:replace替换换行符

时间:2021-07-25 08:54:36
textarea输入换行符后应该是'\n',在div中展示时替换成'<br>'

找到一种方法用jsp标签 jstl fn:replace方法 

使用fn:replace方法之前 先要把jstl的函数库包含进来(菜鸟所以记得仔细点)

<%@ taglib prefix="fn" uri="http://Java.sun.com/jsp/jstl/functions" %>

之后写法如下:

${fn: replace(oticeVo.content,'\n','<br>')} 结果这么写就会报错

把'\n'换成普通字符没有问题

想想是不是'\' 需要转义啊 就写成

${fn: replace(oticeVo.content,'\\n','<br>')}

${fn: replace(oticeVo.content,'\\\\n','<br>')}

结果这两种不报错 但也找不到换行符进行替换

终于在网上找到了出正确结果的方式:

<%

request.setAttribute("vEnter", "\n");

%>

${fn:replace(oticeVo.content,vEnter,"<br>")}

这样就OK替换了。