JSTL <c:if test =“”> without contains </c:if>

时间:2015-02-05 12:43:46

标签: java javascript xhtml

早上好。这是我第一次决定提问。

我正在制作一个xhtml并且想要说明这个条件:

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

包含或不包含<div>,但不适用于包含。我用javascript尝试过,但我也没有进入函数:

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

任何解决方案?

1 个答案:

答案 0 :(得分:0)

JSTL标记在服务器端进行评估,因此在客户端执行的javascript无法在<c:if>测试属性中运行。

尝试使用$代替#我认为更适合您的情况(有关$#差异的详细信息,请参阅此{{1} 3}})。

同样在某些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>

希望这有帮助,