2017-04-04 5 views
0

DataTableのインスタンスを複数回再描画する必要のあるWebアプリケーションがあります。それぞれには非常に小さなデータソースがありますが、通常のインスタンスのパフォーマンスチェックを行うと、複数の図面を描画するとDataTableが遅くなる

var table = $("#Table").DataTable({ 
    "data": smallData 
}); 
$("#Table").clear(): 
$("#Table").rows.add(otherSmallData).draw(); 

すでに200msかかりました。私の場合、すべてのインスタンスの更新には2秒かかりました(ブラウザフリーズされた2秒)。それをクライアントサイドでスムーズに行うためにとにかくありますか?

答えて

1

初期化の速度を向上させるために、遅延レンダリングのオプションをdeferRenderに設定してみてください。

var table = $("#Table").DataTable({ 
    "data": smallData, 
    "deferRender": true 
}); 
+0

延期オプションが大きなデータセットになっているので、それは実際にパフォーマンスが向上しませんが、私は私ができる –

1

すでにjQueryを使用してテーブルへの参照を作成していますが、DOMを掘り起こす代わりにそれを使用するとどうなりますか?このように:

var table = $("#Table").DataTable({ 
    "data": smallData 
}); 
table.clear().rows.add(otherSmallData).draw(); 
+0

を考えていない実際の関数では、IF-他にチェックがあるので。テーブルは初回のみ初期化されます。 –

関連する問題