19

我正在使用primeface 3.5我找到复选框来选择和取消选择或行选择完全独立地工作。虽然我尝试同时选择行选择和复选框选择,但未触发行选择事件。任何人都可以为我澄清这一点吗?

行选择不工作你检查所有事件都在工作

<p:dataTable id="myBookDTable" var="car" value="#{myBean.pageViews}" paginatorPosition="bottom" paginator="true" rows="30" scrollable="true" scrollHeight="400" scrollRows="30" paginatorTemplate="{RowsPerPageDropdown} {FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink} {LastPageLink}" rowsPerPageTemplate="30,50,100"rowKey="#{car.carID}" rowIndexVar="rowIndex" draggableColumns="true" lazy="true">

<p:ajax event="rowSelect" listener="#{myBean.onRowSelect}" update="certainpart"
                                async="true"/>
<p:ajax event="rowSelectCheckbox" listener="#{myBean.rowSelectCheckbox}"/>
<p:ajax event="rowUnselectCheckbox" listener="#{myBean.rowUnselectCheckbox}"/>

<p:ajax event="rowUnselect" listener="#{myBean.rowUnselect}"/>

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

</p:datatable>
4

3 回答 3

24

对于列标题事件,我们在 primeface/jsf 中存在不同的标题名称:“toggleSelect”。你可以这样使用:

<p:ajax event="toggleSelect" update="@this" process="@this" />
于 2013-12-11T09:51:31.920 回答
22

在你的datatable标签中,使用这个

   <p:ajax event="rowSelectCheckbox" update="someComponent" />
  <p:ajax event="rowUnselectCheckbox" update="someComponent" />
  <p:ajax event="rowSelect" update="someComponent" />
  <p:ajax event="rowUnselect" update="someCompoent" />
  <p:column selectionMode="multiple" style="width:4%" />

您需要触发这四个 ajax 事件并确保将列selectionMode设为multiple

于 2013-06-26T05:59:23.980 回答
4

尝试这个:

<p:ajax event="toggleSelect" update=":form:component" partialSubmit="true" />

来源:

PrimeFaces 4.0 用户指南。- Ajax 行为事件

于 2015-02-10T00:35:54.073 回答