2012-04-03 2 views
0

jsp를 다루는 데 문제가 발생했습니다. 두 번째 cout <c:out value="" />은 아무것도 표시하지 않아도 위의 cout을 표시하므로 'Text'로 표시됩니다. 이 버그입니까 아니면 내가 잘못하고있는 거지? 질문에 대한 코멘트에서이상한 JSP 동작

<%@ taglib prefix="html" uri="http://struts.apache.org/tags-html"%> 
<%@ taglib prefix="forms" uri="http://www.common-controls.com/cc/tags-forms"%> 
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%> 

<html:form action="/rulesDetail"> 
    <forms:form type="edit" formid="rulesDetail"> 
    <forms:section title="Title"> 
     <forms:row> 
      <forms:plaintext label="Label1"> 
      <c:out value="Text"/> 
      </forms:plaintext> 
     </forms:row> 
     <forms:row> 
      <forms:plaintext label="Label2"> 
       <c:out value="" /> 
      </forms:plaintext> 
     </forms:row> 
    </forms:section> 
    </forms:form> 
</html:form> 
+0

그러면'Text'라는 출력이 두 번 나옵니까? – Thomas

+0

예, 다른 하나 아래 – hhh3112

+0

흠, ''의 소스에서 동작을 나타내는 것은 아무것도 표시되지 않습니다. 이 방법으로 빈 내용을 처리하는 것은 실제로 태그가 아닌지 확인 했습니까? – Thomas

답변

2

답변 : 문제는 그 내용이 비어 있거나 공백 만있는 경우 이전 행의 값을 재사용 할 것 같습니다 <c:out> 예상대로 작동한다 태그 아니라 <forms:plaintext> 없습니다.