2013-04-11 1 views
0

В моем приложении в dialog я отобразил dataTable в каждом столбце, чтобы выбрать соответствующую строку. В нижней части dialog я пропустил две кнопки , один для отображения выбранных строк, другой для сброса данных, чтобы отменить выбор выбранных строк.Как отменить выбор выбранных строк в Datatable программно

код .xhtml приводится ниже:

<p:dialog id="popUp" header="Activity Detail" widgetVar="popUpWidget" 
showEffect="fade" hideEffect="explode" resizable="false" modal="true"> 
<h:panelGrid> 
    <p:row> 
     <p:column colspan="2"> 
      <p:dataTable id="userListForAdminpopup" value="#{activityListController.activityUsers}" var="user" 
       paginator="true" paginatorPosition="bottom" widgetVar="userListForAdminpopUp" 
       paginatorTemplate="{FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink} {LastPageLink}" 
       rows="10" selection="#{activityListController.selectedActivityUsers}"> 

       <p:column headerText="#{adbBundle['fullName']}" 
        sortBy="#{user.lastName}" filterBy="#{user.fullName}" 
        filterMatchMode="contains" styleClass="userName"> 
        <h:outputLabel value="#{user.firstName}" /> 
       </p:column> 

       <p:column selectionMode="multiple" /> 
      </p:dataTable> 
     </p:column> 
    </p:row> 
    <p:row> 
     <p:column colspan="2"> 
      <h:panelGroup layout="block"> 
       <p:commandButton value="Update" oncomplete="confirmation.show()"/> 
       <p:commandButton value="Reset"/> 
      </h:panelGroup> 
     </p:column> 
    </p:row> 
</h:panelGrid></p:dialog> 

Я хочу, чтобы отменить выбор строки, когда нажмите на кнопку сброса. Как это можно сделать? Если кто-нибудь знает, пожалуйста, дайте мне знать. Благодарю.

+0

Вы можете установить выбор = «# {} activityListController.selectedActivityUsers» на объект, который необходимо установить, а затем обновить DataTable в Ajax. –

+0

благодарит за ответ. любой пример? – Diganta

ответ

2

Вы пытаетесь:

<p:commandButton value="Reset" update="userListForAdminpopup" process="@this" actionListener="#{activityListController.hand}"/> 

Bean:

public void hand(){ 
    selectedActivityUsers = new ActivityUsers(); // Type of element of list 
} 
3

мы можем отменить выбор DataTable строки, используя unselectAllRows слово нажатием кнопки также. увидеть ниже код

<p:dataTable value="#{myBean.list}" var="listItem" id="dataTableId"        
         widgetVar="dtWidgetVar" ....> 
</p:dataTable> 
<p:commandButton value="Reset" onclick="dtWidgetVar.unselectAllRows()"/> 
+5

Он будет onclick = "PF ('dtWidgetVar'). UnselectAllRows();" согласно PrimeFaces 5.2 –

Смежные вопросы