2011-04-08 2 views
1

나는'/<\/@/test#/$/&/)'수없는

)

1 (< 기호와 슬래시 사이에 백 슬래시 제외) 테이블 TD에서 특수 문자를 다음 표시해야

하지만 브라우저에서 '/ '만 표시 할 수 있습니다. 즉 데이터가 잘리지 않습니다.

위의 문제는 < 및/문자가 연속적으로 발생하는 경우에만 발생합니다. 작품 다음은

, 더 내가 다른 특수 문자를 탈출 자바 코드를 사용하고있는 < 기호

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

후/슬래시 성공 없기 때문에. 앰퍼샌드 lt와 함께 <을 성공적으로 바꿀 수 있습니다./슬래시를 바꾸는 방법/< 및// 함께 표시 할 때만.

나에게 도와주세요

죄송합니다, 당신은 내가 따라서 포인트 1 내가 백 슬래시없이 표시해야합니다 (백 슬래시를 제외 달성하기 위해 필요한 볼 수없는 경우에도이 웹 사이트에서, UR 이해를 위해 나는 그것을 뒀다). 나는 새로운 사용자이므로 이미지를 게시 할 수 없습니다.

+0

, 당신은 코드/HTML을 탈출하기 위해 역 따옴표를 (') (작은 따옴표와 혼동하지 않는다)를 사용할 수 있습니다. –

답변

2

JSP로 보내지는 모든 것은 기본적으로 웹 브라우저에서 HTML로 처리됩니다. <은 HTML 태그의 시작을 나타내므로 웹 브라우저가 구문 분석하여 구문 오류로 인해 결국 실패합니다.

당신은 <, >, &"처럼 그 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

+0

안녕하세요 @ BalusC, 단지 "kΩ"을 인쇄하고 싶지만 그대로 인쇄하지 않고 "kâ|"를 보여줍니다. 귀하의 솔루션을 시도하면 '잘못된 문자열이 텍스트 문자열에 사용되었습니다.'라는 오류 메시지가 표시됩니다. –

+0

@ Java.beginner :이 문제는 완전히 다른 원인을 가지고 있으며 완전히 다른 방식으로 해결해야합니다. 힌트 : "문자 인코딩". – BalusC