2015-03-18 3 views
0

У меня есть <p:dataTable>, который имеет столбец флажок,Как использовать PrimeFaces getSelectedRowsCount?

p:column selectionMode="multiple" 

на отправить, я пытаюсь подсчитать количество строк, выбранных в JavaScript с использованием,

tableID.getSelectedRowsCount() 

и

$('tableID').getSelectedRowsCount() 

, но ни один из них не работает. Как я могу сделать эту работу?

+0

спасибо, плохо попробовать это, планирование пейджеры для используйте это, чтобы пользователь не отправлял форму, если ни одна строка не была выбрана. –

+0

Я уже думал об этом, я планирую использовать это как последнее средство. –

ответ

0

я думаю, что я нашел способ, чтобы сделать эту работу

сначала получить ваш p:datatable widgetvar на Js вар, как этот

var zzz = PrimeFaces.widgets['widgetVarName']; 

, а затем вы можете теперь называть getSelectedRowsCount() как это

zzz.getSelectedRowsCount(); 
0

Как упоминалось в Carlo del rosario, вам нужно использовать набор widgetVar в dataTable. Вместо использования PrimeFaces.widgets['wv'] вы можете использовать ярлык PF('wv') для доступа к виджету и вызова функции напрямую без установки промежуточного var. Таким образом, самый краткий способ получить количество строк, выбранных будет:

<p:dataTable widgetVar="wv"> 
... 
</p:dataTable> 
... 

PF('wv').getSelectedRowsCount(); 

Больше DataTable на стороне клиента функции описаны в руководстве пользователя: https://www.primefaces.org/documentation/

+0

'PF ('wv')' является ярлыком для 'PrimeFaces.widgets [ 'wv'] ', а в другом ответе var тоже не нужен, так что ваш ответ будет таким же, как и у другого – Kukeltje

+0

Правда, я имел в виду дать наиболее сжатый ответ. Отмечу, что в моем ответе. – mooseburger

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