國際化

當 DataTables 增強表格時,會向文件中添加幾個控制項,其中許多控制項會以某種方式使用語言字串,向最終使用者傳達其用途。這些預設字串為英文,但可以輕鬆翻譯成其他語言,或自訂以符合表格所表示的資料的確切樣式。

社群提供了 90 多種翻譯版本,隨時可以使用,讓 DataTables 整合到您的母語中超級容易!

設定

DataTables 使用的語言選項透過 language 設定選項進行設定。這是一個物件,其中每個 DataTables 部分使用的字串都由一個參數描述。完整的語言選項列表可在 language 文件參考中找到。

語言選項的設定方式與 DataTables 中其他設定選項完全相同,作為初始化物件的一部分。此範例顯示如何更改搜尋字串

$('#example').DataTable( {
    language: {
        search: "Search in table:"
    }
} );

與其他初始化選項一樣,您可以根據需要更改任意多或少的選項。您未提供值的選項將使用 DataTables 預設值。此範例顯示每個語言選項如何使用法語顯示 DataTables 介面

$('#example').DataTable( {
    language: {
        processing:     "Traitement en cours...",
        search:         "Rechercher :",
        lengthMenu:    "Afficher _MENU_ éléments",
        info:           "Affichage de l'élement _START_ à _END_ sur _TOTAL_ éléments",
        infoEmpty:      "Affichage de l'élement 0 à 0 sur 0 éléments",
        infoFiltered:   "(filtré de _MAX_ éléments au total)",
        infoPostFix:    "",
        loadingRecords: "Chargement en cours...",
        zeroRecords:    "Aucun élément à afficher",
        emptyTable:     "Aucune donnée disponible dans le tableau",
        paginate: {
            first:      "Premier",
            previous:   "Précédent",
            next:       "Suivant",
            last:       "Dernier"
        },
        aria: {
            sortAscending:  ": activer pour trier la colonne par ordre croissant",
            sortDescending: ": activer pour trier la colonne par ordre décroissant"
        }
    }
} );

透過 Ajax 載入翻譯

為了方便起見,DataTables 提供了透過 Ajax 從遠端檔案載入語言資訊的選項。這是透過 language.url 選項設定的。例如,我們可能有

$('#example').DataTable( {
    language: {
        url: '/localisation/fr_FR.json'
    }
} );

language 中的其他選項一樣,Ajax 載入的檔案可以根據 DataTables 語言選項指定您需要的任意多或少的選項。任何未指定的選項都將使用 DataTables 預設值。

數值資料的排序

數值資料通常根據某些規則格式化呈現,例如小數位數的特定字元、千位分隔符號以及貨幣符號等數值類型的標識。DataTables 將自動檢測數值資料類型,例如貨幣、百分比值以及帶有千位分隔符號的值,但預設情況下,它們都以點 (.) 作為小數位數,因為這是數字在 Javascript 中的表示方式。

DataTables 能夠透過 language.decimal 選項,將任何字元用作數值資料的小數位數,為任何形式的數值資料提供完整的數值類型檢測和排序。例如,世界上許多地方都使用逗號 (,) 作為小數位數,Unicode 定義了小數分隔符號字元 (),並且破折號 (-) 有時會在財務文件中使用等等。

透過使用 language.decimal 選項,您可以告訴 DataTables 在表格資料中尋找哪個字元作為小數位數,以便可以正確地對該資料進行排序。

與 DataTables 中的所有語言參數一樣,language.decimal 可以在表格的初始化中定義,也可以在透過 Ajax 載入的語言檔案中定義(如上所示)。

$('#example').DataTable( {
    language: {
        decimal: ",",
    }
} );

可用的翻譯

DataTables 社群總共提交了 50 多種預設英語字串的翻譯,您可以隨時在您的專案中使用。這些可在本網站的外掛程式區段中找到。