1

jQuery dataTable ライブラリを使用していますが、問題が発生しています。テーブル セルの値を変更できるようにするイベント ハンドラーがいくつかあります。このような変更が発生した後、新しく変更されたデータを含む列の列ヘッダーをクリックします。すべての行が並べ替えられますが、新しいデータを含む行は、最初にその列をクリックしたときの元の値に従って並べ替えられたままです。以下は、私が使用している2つの関数です。

したがって、 fnDraw() は望ましい効果がありません。

//called once, after page load completes
function drawTable()
{
    $('#mytable').dataTable({"bFilter": false,
                                       "bSort": true,
                                       "bInfo": false,
                                       "bPaginate": false,
                                       "bDestroy": true});
}

//called each time a table cell value is changed
function initTable()
{ 
    var oTable = $('#mytable').dataTable();
    oTable.fnDraw();
    //fnDraw is not having the desired effect
}
4

3 に答える 3

0

テーブルを再初期化する@jacouhのソリューションに加えて"bStateSave": true、DataTablesオプションも設定してみてください。これにより、ユーザーの並べ替え設定を記憶するために DataTables に Cookie が設定されます。

于 2014-09-09T14:45:32.870 に答える
0

あなたもテストしましたか:

//called each time a table cell value is changed
function initTable()
{ 
    var oTable =  $('#mytable').dataTable({"bFilter": false,
                                   "bSort": true,
                                   "bInfo": false,
                                   "bPaginate": false,
                                   "bDestroy": true});
    oTable.fnDraw();
    //fnDraw is not having the desired effect
}

?

于 2013-10-14T20:38:47.097 に答える