2012-02-27 7 views
5

それはバグだ場合、私は知らないが、私は次のオプションを使用してデータテーブル+アヤックスがありますAjaxのサーバー側のソートは、iSortCol_0がヒント列を考慮していますか?

 "bServerSide": true, 
    "sAjaxSource": url, 
    "fnServerData": function (sSource, aoData, fnCallback) { 
     jQuery.ajax({ 
      "dataType": 'json', 
      "type": "POST", 
      "url": sSource, 
      "data": aoData, 
      "success": fnCallback 
     }); 
    }, 
    "sPaginationType": "bootstrap", 
    "aoColumns": [ 
        { "sName": "Id", "sType": 'numeric', "bVisible": false }, 
        { "sName": "PostingDate", "sType": 'Date' }, 
        { "sName": "Userid", "sType": 'string', "bVisible": false }, 
        { "sName": "DisplayName" }, 
        { "sName": "Description" }, 
        { "sName": "MainTag" }, 
        { "sName": "Tags" }, 
        { "sName": "HowMuch" } 
       ] 

は、私は、ユーザーが行を追加することができますし、彼らはそれを送信したとき、私はにデータを追加するフォームを持っていますデータベースをajax呼び出しで呼び出し、次に: jQuery( '#mydatatable')を呼び出します。dataTable()。fnReloadAjax();

ユーザーは「MainTagは」私のサーバー側のAJAXは、受信列でテーブルをソートするためにクリックしてください:

iSortCol_0 4 
iSortingCols 1 

そして、すべてのbSortable_#が正しく0から7まで、ある示すように(私は8列を持っています上記の。

今私の問題は、私は私が間違ってiSortCol_0列で= 4ソート誤解サーバー上で隠されている列を知って平均値を持っていない場合iSortCol_0は、隠されたコラム以来、誤解を招くです。

回避策を実装して、どの列がデータ表に外部で表示されているか、隠されているかの情報がありますが、私は何か間違っていると感じているか、ドキュメンテーションの私の問題に対する答えを見逃しています。

答えて

4

私はそれを知る自動方法はないと思います。fnServerParams()(詳細はthisのように)を使用して、サーバーに追加のパラメーターを送信して、どの列が隠されているかをサーバーに通知します

"fnServerParams": function (aoData) { 
     aoData.push({ "name": "more_data", "value": "my_value" }); 
    } 
+0

Thanks/Grazie。合理的な標準的なソリューションのように見えます! –

関連する問題