私はjQuerydataTableを次のようにコーディングしています:
$("#my-datatable").dataTable( {
"bProcessing" : true,
// Commenting out next line
//"sDom" : 't',
"sAjaxSource" : "some/url/on/my/server",
"sAjaxDataProp" : "",
"bDestroy" : true,
"fnServerData" : function(sSource, aoData, fnCallback) {
aoData.push({
"name" : "asking",
"value" : "yes"
});
request = $.ajax({
"dataType" : "json",
"type" : "GET",
"url" : sSource,
"data" : aoData,
"success" : fnCallback
});
},
"aoColumns" : [
{
"mDataProp" : "name"
},
{
"mDataProp" : "expr"
},
{
"mDataProp" : "seq"
}
]
});
コメントアウトした行に注意してください。このコードをそのまま実行すると、テーブルが美しくレンダリングされます。残念ながら、ページネーション情報や検索バーなど、表示したくないものがたくさん表示されます。
ドキュメントを読み、例に従った後、コメントアウトされた行は、テーブル自体のみがレンダリング/表示されるようにdataTableを構成するために必要なものであると確信しています。
しかし、コメントアウトすると、Firebugでエラーが発生し、テーブルにデータが入力されません。
TypeError: an is undefined
[Break On This Error]
for ( var i=0, iLen=an.length ; i<iLen ; i++ )
jQuery.dataTables.js
2895行目についても不満を言っているようです。なぜこれが起こっているのか誰かがわかりますか?sDom
属性が正しく構成されていませんか?テーブルとそのヘッダー(およびその中のすべてのデータ)を描画するだけでよいことを忘れないでください。前もって感謝します!