早上好。这是我第一次决定提问。
我正在制作一个xhtml并且想要说明这个条件:
<c:if test="#{fichaTecnicaBean.seccionesSeleccionadas.contains("text")}">
包含或不包含<div>
,但不适用于包含。我用javascript尝试过,但我也没有进入函数:
<c:if test="javascript:find('text');">
任何解决方案?
答案 0 :(得分:0)
JSTL标记在服务器端进行评估,因此在客户端执行的javascript
无法在<c:if>
测试属性中运行。
尝试使用$
代替#
我认为更适合您的情况(有关$
和#
差异的详细信息,请参阅此{{1} 3}})。
同样在某些jsp / servlet中,旧版本调用的方法不适用于JSTL,并且只能使用对象属性(这可能是.contains()
不起作用的原因)。因为fichaTecnicaBean.seccionesSeleccionadas
是List<String>
,您可以尝试使用<c:forEach>
并比较其元素,如下所示:
<c:forEach items="${fichaTecnicaBean.seccionesSeleccionadas}" var="seccion">
<c:if test ="${seccion == 'text'} ">
...
</c:if>
</c:forEach>
希望这有帮助,