无法在JSP页面中正确显示特殊字符
我需要在表TD中显示以下特殊字符(不包括<符号和正斜杠之间的反斜杠),
'/<\/@/test#/$/&/)'
但是,浏览器只能显示’/,即数据被截断。
仅当<和/字符连续出现时,才会发生上述问题。
也就是说,跟随作品,因为<符号后没有连续的正斜杠/
'/<@/test#/$/&/)'
我正在使用Java代码来转义其他特殊字符。我能够用&符号成功替换<; 但是仅当<和/一起出现时,才如何替换正斜杠/。
请帮我
抱歉,即使在此网站中,您也看不到我需要实现的目标,因此在第1点中,请排除反斜杠(为了显示您的理解,我需要不加反斜杠显示)。我是新用户,因此无法发布图片。
回答:
默认情况下,Web浏览器将JSP发送的所有内容都视为HTML。该<
指示开始HTML标签,因此网页浏览器会分析它本身(而最终失败的原因语法错误)。
你想逃避那些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()
函数更好。
<%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>...
<input type="text" value="${fn:escapeXml(bean.text)}" />
以上是 无法在JSP页面中正确显示特殊字符 的全部内容, 来源链接: utcz.com/qa/418537.html