2015-02-05 3 views
1

안녕하십니까. 내가 질문을하기로 결정한 것은 이번이 처음입니다. 나는 'JSTL <c:if test> 포함하지 않음

은 XHTML에 일하고 있어요 및이 조건에 넣을 :

<c:if test="#{fichaTecnicaBean.seccionesSeleccionadas.contains("text")}"> 

포함하는 여부를 <div> 디스플레이를하지만, 포함 작동하지 않습니다. 나는 자바 스크립트로 시도했지만 둘 다 함수를 입력하지 않았다 :

<c:if test="javascript:find('text');"> 

어떤 해결책?

답변

0

JSTL 태그는 서버 측에서 평가되므로 클라이언트 측에서 실행되는 javascript<c:if> 테스트 속성 내에서 작동하지 않습니다.

내가 더 잘 맞는 케이스 ($#의 차이에 대한 자세한 정보를 들어이 post에서 답 참조) 생각하는 $ 대신 #의를 사용해보십시오.

또한 일부 jsp/servlet의 이전 버전에서는 JSTL에서 작동하지 않는 메소드를 호출하고 객체 등록 정보로만 작업 할 수 있습니다 (이는 아마도 .contains()이 작동하지 않는 이유 일 수 있습니다). fichaTecnicaBean.seccionesSeleccionadasList<String>이기 때문에 당신이 <c:forEach>을 사용하여 다음과 같이 요소를 비교하려고 할 수 있습니다 :이 도움이

<c:forEach items="${fichaTecnicaBean.seccionesSeleccionadas}" var="seccion"> 
    <c:if test ="${seccion == 'text'} "> 
    ... 
    </c:if> 
</c:forEach> 

희망, 도움을

+0

덕분에 내가 오류가 발생하기 때문에, 내 문제가 해결되지 <% @ taglib ... %>. 바람둥이에 다음과 같은 오류가 표시됩니다. 오류 : /views/fichaTecnica/listaComponentes.xhtml : 오류 추적 [행 : 18] 편집자와 함께 노래하는 사람. com.sun.faces.facelets.compiler.SAXCompiler.doCompile 에서 \t는 나도 처음에 그들을 넣어 시도했지만 저를 인식하지 못합니다 <% @ 태그 라이브러리 나는 다른 문자열과 I에 strng을 추구하는 방법을 포함 참조 목록에서 문자열 검색 < String> –

+0

@IgnacioUnzueta 아, 목록으로 작업하고 있는지 모르겠다. 이제는 내 대답이 더 정확하다. ') – albciff