0

ソースとしてajax応答を使用してDataTableを生成したいと思います。GSONライブラリを使用して従業員のArrayListをJSON文字列に変換します。私が取得するJSON文字列は

{
"sEcho": 3,
"iTotalRecords": 2,
"iTotalDisplayRecords": 2,
"aaData": [
    {
        "id": 1,
        "firstName": "darsheet",
        "lastName": "shah",
        "city": "san jose",
        "state": "ca",
        "zip": 95112
    },
    {
        "id": 2,
        "firstName": "akshat",
        "lastName": "shah",
        "city": "ahmedabad",
        "state": "gj",
        "zip": 380061
    }
]

}

ただし、sAjaxSource属性には次の形式のJSON文字列が必要です

{
"sEcho": 3,
"iTotalRecords": 2,
"iTotalDisplayRecords": 2,
"aaData": [
    {
        "0": 1,
        "1": "darsheet",
        "2": "shah",
        "3": "san jose",
        "4": "ca",
        "5": 95112
    },
    {
        "0": 2,
        "1": "akshat",
        "2": "shah",
        "3": "ahmedabad",
        "4": "gj",
        "5": 380061
    }
]

}

私が使用するDatatableコードは

$(document).ready(function(){
$('#refresh').click(function(){
    $('#emp').dataTable({
        "sAjaxSource":".../ExploreDatatable/loadTableAjax"  
    });

});
});

JSON構造のこの不一致を取り除く方法は?

ありがとう。

4

1 に答える 1

0

私が知っているように、datatableのオプションが間違っているということです。これは次のように実行する必要があります。

$('#emp').dataTable({
        "sAjaxSource":".../ExploreDatatable/loadTableAjax",
        "aoColumns": [{"mDataProp": "id"},
                      {"mDataProp": "firstName"},
                         .....the other column names, that should be mapped to the json key......
                     ]
    });
于 2013-03-12T00:56:30.563 に答える