我正在搜索和搜索,但我找不到任何可以解决我的问题。 我使用DataTable(Primefaces)并想知道如何更改某些字段的语言/输出。
更确切地说,我想更改PaginatorTemplate中的{CurrentPageReport}。 现在,它看起来很简单:(0 of 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 Code但我找不到正确的代码区域。
我正在使用JSF 2.0.3和PrimeFaces 2.2.1。 我怎样才能解决我的问题?我可以从bean加载paginatorTemplate吗? 如果我可以将文本从“0 of 100”更改为“0 aus 100”(德语),那将对我有所帮助。
希望你们能帮助我,就像每次遇到问题一样。
Ioannis K。
答案 0 :(得分:19)
找到它:
<p:dataTable currentPageReportTemplate="{currentPage} #{loc.of} {totalPages}" />
对于那些感兴趣的人: - )
*现在:我喜欢这样:
paginatorTemplate="{FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink} {LastPageLink}"
currentPageReportTemplate="(Entries: {startRecord} - {endRecord} of {totalRecords}, Page: {currentPage}/{totalPages})"
希望这可以帮助你们!
答案 1 :(得分:0)
我没有测试过,但PrimeFaces确实支持德语区域设置。您是否尝试在bean中设置区域设置以查看“0 of 100”是否更改为“0 aus 100”?
FacesContext.getCurrentInstance().getViewRoot().setLocale(new Locale("de"));