我有一个名为时间表的二维数组,用于存储一周中的天数和小时数。如何为 p:selectBooleanCheckbox
value 属性提供表达式来设置/获取时间表值。
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:p="http://primefaces.prime.com.tr/ui">
<h:panelGrid columns="24">
<c:forEach begin="0" end="6" varStatus="day">
<c:forEach begin="0" end="23" varStatus="hour">
<p:selectBooleanCheckbox value="...">
<p:ajax listener="#{windowsLogonHours.selectHour(day.count - 1, hour.count - 1)}" />
</p:selectBooleanCheckbox>
</c:forEach>
</c:forEach>
</h:panelGrid>
</ui:composition>
最佳答案
假设时间表
是一个boolean[][]
,那么你可以使用LoopTagStatus#getIndex()
从 varStatus 获取迭代索引,您可以将其用作二维数组的索引。
<p:selectBooleanCheckbox value="#{bean.timetable[day.index][hour.index]}">
请注意,您必须在支持 bean 的初始化或(后)构造期间自行准备数组。 JSF/EL 不会为您准备数组,而只会通过索引获取/设置其值。
关于java - 用于设置/获取 p :selectBooleanCheckbox 值的表达式语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11310292/