我正在使用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>
答案 0 :(得分:21)
对于列标题事件,我们在primeface / jsf中存在不同的标题名称: &#34; toggleSelect&#34 ;. 您可以这样使用:
<p:ajax event="toggleSelect" update="@this" process="@this" />
答案 1 :(得分:19)
在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
答案 2 :(得分:3)
试试这个:
<p:ajax event="toggleSelect" update=":form:component" partialSubmit="true" />
来源:
PrimeFaces 4.0用户指南.- Ajax行为事件