Как получить текущий номер страницы dataTable с помощью Jquery

Я пробовал решения, представленные в rich:dataTable paging - пометка посещенных страниц богатым: datascroller, но он не работал с расширенными лицами 4.3.4.

Я также пробовал атрибут страницы скроллера данных. Вот мой код, реализующий атрибут страницы прокрутки данных.

 <h:form id="mainForm">
     <rich:dataScroller for="itemDataTable" maxPages="30" execute="itemDataTable" page="#{itemsController.pageIndex}"/>                                 
     <rich:dataTable rowKeyVar="rkVar" rows="15" id="itemDataTable" value="#{itemsController.itemDM}" var="r">
     <f:facet name="footer">
        <h:outputText id="pageNumberOutPutText" value="#{itemsController.pageIndex}"/>
     </f:facet>
        <h:column id="setValue">
            <h:inputText id="finalItem" valueChangeListener="#{itemsController.recalculate()}" value="#{r.items.prices}"/>
        </h:column>
        ...
        ...
    <!-- other columns --> 
    </rich:dataTable>
    <rich:dataScroller for="itemDataTable" maxPages="30" execute="itemDataTable" page="#{itemsController.pageIndex}"/>                                      
</h:form>

У меня есть соответствующие геттеры и сеттеры в моем классе itemsController и со следующей областью действия:

@ManagedBean
@ViewScoped

с изначально установленным значением pageIndex 1.

private int pageIndex = 1;

И я попытался предупредить текущий номер страницы, используя:

alert('You are in page : ' + $('#mainForm\\:itemDataTable\\:pageNumberOutPutText').val());

Но он предупреждает только 1. Также outputText в нижнем колонтитуле с данными показывает только 1, даже если я нажимаю следующую страницу или другие страницы.

Прежде всего, все, что я хотел сделать, это предупредить текущий номер страницы с помощью JQuery. Я также не хочу использовать для этого геттеры и сеттеры, если это возможно. Я действительно хотел знать, как получить текущий номер страницы с помощью Jquery.


person Mubin Shrestha    schedule 31.01.2014    source источник
comment
Я вручную решил проблему, используя событие щелчка прокрутки данных из Jquery. Но было бы очень полезно, если бы кто-нибудь показал мне альтернативу pageIndexVar в richfaces 4.3.4 или аналогичном.   -  person Mubin Shrestha    schedule 01.02.2014
comment
Это поможет, если вы добавите render=pageNumberOutPutText в rich:dataScroller?   -  person Andrey    schedule 04.02.2014
comment
О, мне стыдно. Спасибо. Это решило мою проблему.   -  person Mubin Shrestha    schedule 09.02.2014
comment
Хорошо спасибо. Преобразование в ответ, чем.   -  person Andrey    schedule 10.02.2014


Ответы (2)


Укажите область для повторного рендеринга с запросом ajax для обновления соответствующих частей представления. Например.:

<rich:dataScroller render="pageNumberOutPutText"/>

person Andrey    schedule 10.02.2014

Текущий номер страницы находится в объекте JS, поддерживающем прокрутку данных. Вы можете получить его с помощью:

#{rich:component('scrollerId')}.currentPage
person Makhiel    schedule 04.02.2014