0

日付範囲に応じて、0 から数百行を表示するページを作成しています。ユーザーがページに入ると、すべての行がロードされて表示され、ユーザーは必要に応じてデータをフィルタリングできます。これはクロムではかなり速いように見えますが、IE8 はある時点で非常に遅くなります。(残念ながらIE8は重要なブラウザです)

ページの読み込み時にデータ全体が必要であるが、サブセットのみを表示したいとします。それを行う最良の方法は何ですか?

1.) DOM 文字列を作成し、必要な行のみを「実際の」DOM に追加します。
2.) データを localStorage に保存します。
3.) サーバーが生成した JSON オブジェクトから必要なデータを取得します。
4.) ???

それとも、指定されたクエリでサーバーにヒットし、必要なデータのみを返す方が常に良いですか?

4

1 に答える 1

0

ページの読み込み時に、DOM 内のすべての行をレンダリングし、JSON 配列内のデータの必要なフィールドを出力します。フィルター条件が変更された場合は、JSON でデータをフィルター処理してから、JSON の一意の識別子を使用してテーブル内の行を非表示にします (非表示にするだけで、削除はしません)。このようにして、既存の行を再レンダリングする必要はありません。

ただし、ajax の方法を選択した場合、最速の方法はサーバー側で HTML をレンダリングし、テーブルのコンテンツをそれに置き換えるだけです。このようにして、ブラウザーは指定された文字列から表現をレンダリングします。JSON 配列を反復処理して 1 つずつレンダリングする必要はありません。その欠点は、おそらくネットワークの遅延と帯域幅です。それが決定に役立つことを願っています

于 2013-01-28T15:55:55.313 に答える