2011-04-08 208 views
1

我需要在表格中顯示TD下列特殊字符(不包括反斜槓在<符號和正斜槓之間),不能在JSP頁面中正確顯示特殊字符

1)'/<\/@/test#/$/&/)'

但是,瀏覽器只能顯示'/ 即數據被截斷。

僅當<和/ chars連續出現時纔會出現上述問題。

也就是說,以下作品沒有後續斜槓(/)的<符號

2)'/<@/test#/$/&/)'

我使用Java代碼來躲避其他特殊字符之後。 我能夠成功地用&符號替換<;但如何取代正斜槓/只有當<和/或一起出現。

請幫我

對不起,即使在這個網站上,你看不到我需要什麼來實現的,因此,在1點排除反斜槓(我需要顯示沒有反斜槓,烏拉圭回合的理解我已經把它)。我無法發佈圖片,因爲我是新用戶。

+0

在Stack Overflow上,您可以使用反引號(')(不要將其與單引號混淆)轉義代碼/ HTML。 – 2011-04-08 17:32:21

回答

2

由JSP發送的everthing默認被web瀏覽器視爲HTML。 <指示HTML標記的開始,因此webbrowser將會解析它(並且最終由於語法錯誤而失敗)。

你想逃避那些HTML特殊字符,如<,>,&"

&lt; will be displayed as < 
&gt; will be displayed as > 
&amp; will be displayed as & 
&quot; 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)}" /> 
+0

簡單的解決方案,但非常強大。非常感謝你解決了我的問題。我沒有想到如此快速的迴應。感謝一百萬次。 – nbharan4u 2011-04-08 17:36:50

+0

嗨@BalusC,只是想打印「kΩ」,但它不是按照原樣打印,而是顯示「kâ」。當我嘗試你的解決方案時,它提供了'在字符串中使用無效的字符串',請幫我解決這個問題,謝謝。 – 2015-01-06 14:44:26

+0

@ Java.beginner:這個問題有一個完全不同的原因,需要解決完全不同的問題。提示:「字符編碼」。 – BalusC 2015-01-06 14:49:18

相關問題