我需要在表格TD中显示以下特殊字符(排除< symbol和正斜杠之间的反斜杠),
1) '/<\/@/test#/$/&/)'
但是,浏览器只能显示'/ 即数据被截断。
上述问题仅在&lt;和/ chars连续发生。
也就是说,跟随工作,因为在&lt;之后没有成功的正斜杠/符号
2) '/<@/test#/$/&/)'
我正在使用java代码来逃避其他特殊字符。 我能够成功替换&lt;用&符号;但是如何替换正斜杠/仅当&lt;和/一起出现。
请帮帮我
很抱歉,即使在这个网站上你也看不到我需要达到的目的,因此在第1点中排除了反斜杠(我需要显示没有反斜杠,因为你理解我已经把它放了)。因为我是新用户,所以无法发布图片。
答案 0 :(得分:3)
默认情况下,JSP发送的everthing被Web浏览器视为HTML。 <
表示HTML标记的开始,因此webbrowser将解析它(并且最终因语法错误而失败)。
您想要转义那些HTML特殊字符,例如<
,>
,&
和"
。
< will be displayed as <
> will be displayed as >
& will be displayed as &
" will be displayed as "
如果是动态文字,最好使用JSTL <c:out>
代码完成。
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
...
<c:out value="${bean.text}" />
如果您想设置HTML属性,JSTL fn:escapeXml()
function就更好了。
<%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
...
<input type="text" value="${fn:escapeXml(bean.text)}" />
答案 1 :(得分:0)
通过将此指令添加到页面中,使它可以在JSP上工作
<%@ page contentType="text/html; charset=UTF-8" %>