2

jQuery Javascript ライブラリの DataTables プラグインを使用しています。HTML テーブルに高度な対話コントロールを追加する非常に柔軟なツールです。

HTMLページにテーブルを描画するために、次の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
                    } );}

});
        }

});

このコードでは、サーバーに ajax 呼び出しを送信してテーブル設定を取得します。テーブル設定をレンダリングした後、データのためにサーバーに送信される 2 番目の ajax 呼び出し。サーバー側からjsonの形式ですべての「aoColumnDefs」データを取得します。

{"aoColumnsRef":[{"aTargets":[1],"mDataProp":"deptName","sTitle":"Department Name","bVisible":true,"bSearchable":true},{"aTargets":[0],"mDataProp":"deptId","sTitle":"Department Id","bVisible":true,"bSearchable":false}]}

私の質問は:

1)サーバーから設定とデータをロードするこの方法は正しいですか。

2)サーバー側からデータとテーブル設定を取得する他の方法はありますか(テーブル設定とは、列のタイトル、ターゲット、検索、並べ替え、およびテーブルに関連するすべての設定を意味します)

4

0 に答える 0