Простые лица p: datatable - Изменить {CurrentPageReport} - PullRequest
4 голосов
/ 28 марта 2011

Я ищу и ищу, но не могу найти ничего, чтобы решить мою проблему. Я использую DataTable (Primefaces) и удивляюсь, как я могу изменить язык / вывод некоторых полей.

Точнее, я хочу изменить {CurrentPageReport} в PaginatorTemplate. Теперь это выглядит очень просто: (0 из 100). Я хочу, чтобы это было так (Страница 0 из 100, 500 результатов).

Я много пробовал, но ничего не работает. Последнее, что я сделал, было:

function change_text () {
    $(".ui-paginator-current").each (function() {
        $(this).html("Simple test");
    });     
}

$(".ui-icon").each(
            function(index) {
                $( this ).bind ("click",function(){ change_text (); });
            }
    );

(ui-icon является частью каждой кнопки в таблице.)

Но это не очень эффективно, как вы можете видеть :-) Это решение работает на полпути. Когда я нажимаю кнопку (следующая страница, предыдущая страница), текст в поле .ui-paginator-current возвращается к шаблону по умолчанию. Я знаю ... причина в том, что это поле также перезагружается.

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

Я работаю с JSF 2.0.3 и PrimeFaces 2.2.1. Как я могу решить мою проблему? Могу ли я загрузить шаблон paginatorTemplate из компонента? Это действительно помогло бы мне, если бы я мог изменить текст с «0 из 100» на «0 aus 100» (немецкий).

Надеюсь, вы, ребята, можете мне помочь, как и каждый раз, когда у меня возникают проблемы.

Иоаннис К.

Ответы [ 2 ]

19 голосов
/ 30 марта 2011

Нашел:

<p:dataTable currentPageReportTemplate="{currentPage} #{loc.of} {totalPages}" /> 

для тех, кто заинтересован в этом: -)

* Теперь: у меня это так:

paginatorTemplate="{FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink} {LastPageLink}"

currentPageReportTemplate="(Entries: {startRecord} - {endRecord} of {totalRecords}, Page: {currentPage}/{totalPages})"

Надеюсьэто вам ребята поможет

0 голосов
/ 28 марта 2011

Я не проверял, но PrimeFaces поддерживает немецкий язык.Вы пытались установить локаль в вашем бине, чтобы увидеть, изменится ли «0 из 100» на «0 aus 100»?

FacesContext.getCurrentInstance().getViewRoot().setLocale(new Locale("de"));
...