数据表复选框选择设置为空

时间:2013-11-18 15:24:03

标签: jsf-2 checkbox primefaces datatable

我已经包含在dataTable <p:column selectionMode="multiple" style="width:2%"/>中,并为dataTable selection="#{login.selectedAlarms}"提供了一个数组,但在选择checkBox时,它没有为数组设置任何内容。选择所有checkBox时,数组也为空。

<p:dataTable id="eventsDataTable" value="#{login.lstAlaramDataByType}" 
             selection="#{login.selectedAlarms}"
             rowKey="#{item.id}" var="item" rowIndexVar="rowIndex">

    <p:column selectionMode="multiple" style="width:2%"/>

    <p:column id="vehicleId" headerText="vehicleId" width="60">
        <h:outputText value="#{item.vehicleId}"/>
    </p:column>
</p:dataTable>

Java代码:

private List<AlarmDataBean> lstAlaramDataByType;
private AlarmDataBean[] selectedAlarms;

和他们的Setters和getters。

setSelectedAlarms 选择checkBox时没有被调用。

我做错了吗?

1 个答案:

答案 0 :(得分:0)

要查看对setSelectedAlarms()的调用,您需要提交表单(例如通过按钮),或者添加ajax事件,如下所示:

<p:datatable ...>
  <p:ajax event="rowSelectCheckbox"/>
  ...
</p:dataTable>