Konieczność przechwycenia zdarzenia rowsSelect obiektu dataTable z wyborem wiersza opartego na polu wyboru. Kod jest następujący:Zdarzenie RowSelect - Primefaces - dataTable
<p:ajax event="rowSelect" listener="#{articleBean.onRowSelect}"
oncomplete="articleBean.onSelection" />
<p:ajax event="rowUnselect" listener="#{articleBean.onRowUnselect}"
oncomplete="articleBean.onSelection" />
<p:column id="name" headerText="Select" selectionMode="multiple"
style="width:18px" />
Nie jestem w stanie zrozumieć zachowania. Kiedy klikam pole wyboru po raz pierwszy, wywoływana jest metoda "onRowSelect". Kiedy odznaczam, "onRowUnselect" nie jest wywoływany. Ponadto, metoda "onRowSelect" jest wywoływana tylko raz dla siatki, tak jak w przypadku kliknięcia dowolnego innego pola wyboru, zdarzenie nie jest wyzwalane. Brak mi czegoś? Nie można zrozumieć tego zachowania.
Dzięki, Shikha
Czy to działa, jeśli odświeżyć strona po pierwszej selekcji? –
@Matt Tak, działa po pierwszym wybraniu po odświeżeniu. –
Nie widzę żadnego polecenia aktualizacji w 'p: ajax'. Tak więc tylko bieżący element zostanie zaktualizowany. Możesz spróbować ustawić 'update =" @ form "' jeśli jest to możliwe w twoim przypadku. –