2

我有一个名为时间表的二维数组,它存储一周中的日期和小时数。如何为p:selectBooleanCheckboxvalue 属性提供表达式以设置/获取时间表值。

<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>
4

1 回答 1

2

假设timetable是 a boolean[][],那么您可以使用LoopTagStatus#getIndex()fromvarStatus获取迭代索引,您可以将其用作二维数组的索引。

<p:selectBooleanCheckbox value="#{bean.timetable[day.index][hour.index]}">

请注意,您必须在支持 bean 的初始化或(后)构造期间自己准备数组。JSF/EL 不会为您准备数组,而只会通过索引获取/设置其值。

于 2012-07-03T12:50:32.043 回答