如何从实际选中的列到我的Bean中获取RowIndex?

时间:2016-12-15 07:27:01

标签: ajax jsf primefaces datatable

我尝试从实际选定的列中获取rowindex,并使用以下选项取消选择:

 public void rowSelect(SelectEvent event) {
        MyDataView selected = (MyDataView) event.getObject();
        if (!selectedData.remove(selected)) {
            selectedData.add(selected);
        } else {      
            RequestContext.getCurrentInstance().execute("PF('datatTable').unselectRow(rowindex);");
        }
    }
}

我知道使用UnselectEvent取消选择一行很容易,然后按" crtl"但我的客户想要一键取消选择一行。

    <p:dataTable widgetVar="datatTable" id="idDataTable" value="#{bean.dataview}" var="data" scrollable="true" scrollHeight="150"
                             rowSelectMode="add" selectionMode="multiple"
                selection="#{sendGroupSmsSimple.selectedReceivers}" rowKey="#{bean.id}" filteredValue="#{data.filterData}" rowIndexVar="dataRowIndex">
        <p:column id="recColumn" headerText="Name" filterBy="#{bean.fullname}" filterFunction="#{data.filterData}">
                <h:outputText value="#{bean.fullname}"/>
        </p:column>
        <p:ajax event="rowSelect" listener="#{sendGroupSmsSimple.rowSelect}" process="@this" update="mainForm:updatePanel"/>
</p:dataTable>

我不想更新整个表单,因为我想要滚动条的实际状态。 我的实际Primefaces版本是6.0。 我的Bean的范围是GroupedConversationScoped。 感谢

0 个答案:

没有答案