テーブルソーターを使用して、ページの1つでグリッドを並べ替えています。更新された株式情報について10秒ごとにAJAX呼び出しを行い、それに応じてグリッドを更新しています。それだけは機能していますが、並べ替えオプションを適切にキャッシュできません。むしろ、並べ替えをキャッシュしたようですが、キャッシュすると、tablesorterは以前の行もキャッシュし、新しい並べ替えられた行のセットと一緒に表示します。
たとえば、最初のグリッドには10行のデータがあります。2列目で並べ替えます。10秒後、新しい10行のセットが入りますが、空にしても最初の10行は表示されます。いろいろ調べてみましたが、答えが見つからないようです。
まったく並べ替えず、「sorton」のトリガーを呼び出さないと、必要に応じて10行が取得されますが、もちろん行は並べ替えられません。そのトリガーを「sorton」に対して呼び出すと、データはソートされますが、関数が呼び出されるたびに10個の新しい行が取得されます(合計20行、次に合計30行など)。
これが私のAJAX呼び出しの中からの私のコードです:
if (myResult.Data.length > 0) {
$.each(myResult.Data, function() {
myRows += "<tr><td>" + this.column1 + "</td><td>" + this.column2 + "</td></tr>";
});
$("#myTBody").empty();
// $("#myTBody").append(myRows); //tried this first
// $("#myTable").trigger("update"); // combined with this
$("#myTBody").append(myRrows).trigger("update");
var sorting = $("#myTable")[0].config.sortList;
$("#myTable").trigger("sorton", [sorting]);
}