非表示の列に基づく非常にトリッキーな回避策が 1 つあります。
テーブルを初期化するには、次の手順を実行します。最初に "aoColumns": を 4 つの列で定義します。
"aoColumns": [
{ "sTitle": "Id", "mData": "id" },
{ "sTitle": "Label" "mData": "label" },
{ "sTitle": "Type", "mData": "type" },
{ "sTitle": "Name" ,"mData": "name" }]
次に、最初のラジオ ボタンの場合など、ajax ソースを定義します。
"sAjaxSource" : "/getFirstAjaxSource";
テーブルの初期化後、jQuery を使用して 3 列目と 4 列目 (この場合は "Type" と "Name" ) を非表示に設定すると、最初と 2 番目の列のみが表示されます。
$(function(){
oTable.fnSetColumnVis( 2, false);
oTable.fnSetColumnVis( 3, false );
})
次に、クリック ハンドラー関数で次のロジックを使用します。
最初のボタン:
jQuery('#first').live('click',function () {
oTable.fnSettings().sAjaxSource = "/getFirstAjaxSource";
oTable.fnSetColumnVis( 0, true);
oTable.fnSetColumnVis( 1, true );
oTable.fnSetColumnVis( 2, false);
oTable.fnSetColumnVis( 3, false );
});
2 番目のボタン:
jQuery('#second').live('click',function () {
oTable.fnSettings().sAjaxSource = "/getSecondAjaxSource";
oTable.fnSetColumnVis( 0, false);
oTable.fnSetColumnVis( 1, false );
oTable.fnSetColumnVis( 2, true);
oTable.fnSetColumnVis( 3, true );
});
ajax ソースの隠し列に偽の値を追加することを忘れないでください。