6

私はdatatables jqueryプラグインを使用しており、サーバーサイドから設定とデータを取得しています.しかし、データテーブルに複数の言語(アラビア語と英語)を追加し、これらの両方の言語で列のタイトルを追加したい.

$(document).ready(function() {
var columns;
$.ajax({
        type: "POST",
        url: "./viewController",
        data:{ "TableName" : "ViewGridDept",
        "Call" : "gridConfiguration"},
        dataType:"json",
        success: function(coldata){
        //columns=data.aoColumns;
        //var coldata = eval( '('+data+')' );
        alert(coldata.aoColumnsRef);
        employeeTable = $("#EmployeeTable").dataTable({
        "bJQueryUI" : true,
        "sPaginationType" : "full_numbers",
        "bFilter": true,
        "bInfo": true,
        "bServerSide": true,
        "sAjaxSource" : "./viewController",
        //"aoColumns":coldata.aoColumns ,
        "aoColumnDefs":coldata.aoColumnsRef,
        //"aoColumnDefs":[{"sTitle":"Department Name","mDataProp":"deptName","aTargets":"[1]"},{"sTitle":"Department ID","mDataProp":"deptId","aTargets":"[0]"}],
        "fnServerData": function ( sSource, aoData, fnCallback ) {
            aoData.push( { "name" : "TableName", "value" : "ViewGridDept" },
            { "name" : "Call", "value" : "Data" } );
            $.ajax( {
                    "dataType": 'json', 
                    "type": "POST", 
                    "url": sSource, 
                    "data": aoData, 
                    "success": fnCallback
                    } );}

});
        }});

これが私の設定とデータを取得する方法です。

私の質問は、特に列ヘッダーのデータ テーブルの言語を変更する方法です。

4

1 に答える 1

6

<th>列について: DataTables にクライアント側のテーブルキャプションを処理させたいのはなぜですか? サーバー側で、ユーザー言語を既に知っていると思いますが、<table>とにかく -skeleton を構築する場所でそれを行うことはできませんか?

DataTables の内部文字列などについては、First Next Showing 1 to 10 of 57 entriesこのようにアラビア語に翻訳したファイルを作成するだけです

{
    "sProcessing":   "جاري التحميل...",
    "sLengthMenu":   "أظهر مُدخلات _MENU_",
    "sZeroRecords":  "لم يُعثر على أية سجلات",
    "sInfo":         "إظهار _START_ إلى _END_ من أصل _TOTAL_ مُدخل",
    "sInfoEmpty":    "يعرض 0 إلى 0 من أصل 0 سجلّ",
    "sInfoFiltered": "(منتقاة من مجموع _MAX_ مُدخل)",
    "sInfoPostFix":  "",
    "sSearch":       "ابحث:",
    "sUrl":          "",
    "oPaginate": {
        "sFirst":    "الأول",
        "sPrevious": "السابق",
        "sNext":     "التالي",
        "sLast":     "الأخير"
    }
}

arabic.txt と呼び、これをdataTable()上記の初期化に追加します。

..

oLanguage: { "sUrl": "path-to-your-translation-file/arabic.txt" },

..

[ご想像のとおり :-)] 既にアラビア語に翻訳されています。ここで見つけることができますhttp://www.datatables.net/plug-ins/i18n

于 2013-08-30T13:04:03.230 に答える