2011-03-28 96 views
4

我正在搜索和搜索,但找不到任何東西來解決我的問題。 我使用DataTable(Primefaces)並想知道如何更改某些字段的語言/輸出。Primefaces p:datatable - 更改{CurrentPageReport}

更確切地說,我想更改PaginatorTemplate中的{CurrentPageReport}。 現在,它看起來很簡單:(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圖標是表中的每個按鈕的一部分。)

但是,這是不是真的有效,你可以:-) 看到此解決方案的一半-辦法。當我按下按鈕(下一頁,上一頁)時,.ui-paginator-current字段中的文本將變回默認模板。 我知道..原因是因爲這個字段也被重新加載。

我也嘗試更改Primefaces代碼,但是我找不到正確的代碼區域。

我正在使用JSF 2.0.3和PrimeFaces 2.2.1。 我該如何解決我的問題?我可以從bean加載paginatorTemplate嗎? 如果我可以將文本從「0的100」改爲「0 aus 100」(德文),那真的會有幫助。

希望你們能幫助我,就像我每次遇到問題一樣。

揚K.

回答

19

發現:

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

對於那些誰感興趣:-)

*現在:我有這樣的:

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

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

希望這有助於你們!

+3

您也可以這樣做:'currentPageReportTemplate =「#{msg.PAGE_LABEL}」'其中'#{msg.PAGE_LABEL}'是'PAGE_LABEL = {totalPage}的{currentPage},存儲在英文資源包中(MessageResources_en.properties)。對於其他語言,只需翻譯「** **」一詞並將每個翻譯存儲在單獨的資源包中,例如,爲法語資源包(MessageResources_fr.properties)執行此操作:'PAGE_LABEL = {currentPage} sur {totalPages }'。希望這有助於任何人在未來發布此帖。 – ChuongPham 2011-04-18 16:15:56

+0

@Ioannis:這真的有很大的幫助! – 2012-05-16 02:57:44

0

我沒有測試過,但PrimeFaces不支持德文場所。你有沒有嘗試設置你的bean中的區域設置,看看「0 of 100」是否變爲「0 aus 100」?

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

是的,我想我是。我的(我們)項目支持多語言,並且它自己檢查用戶瀏覽器中的哪個默認語言是通過faces-config.xhtml設置的。 FacesContext.getCurrentInstance()。getViewRoot()。setLocale()正在自動執行,它的工作原理。當我將我的瀏覽器語言更改爲德語時,我的整個網站都是德語,但不是頁面報告。 – 2011-03-28 17:37:14

+1

Ioannis K .:您可能希望添加該答案並接受該答案,以便其他人更容易找到該解決方案。 – 2011-03-29 15:26:50

+0

你是對的Jörn。我現在做了。我只是想知道這裏的東西是如何工作的。 – 2011-03-30 15:50:20

相關問題