私はJSONとPHPを使用して10,000以上の非常に大きなテーブルを返します。Javascript、大規模な非常に大きなテーブルをDOMに追加する最良の方法
問題は、innerHTMLを使用してDOMにテーブルを追加することですが、これは15秒以上かかることがあり、ブラウザがクラッシュすることがあります。何とかこれを最適化するソリューションはありますか?テーブルは既にPHPの1つの文字列にあらかじめ組み込まれているので、追加するだけです。
私はJSONとPHPを使用して10,000以上の非常に大きなテーブルを返します。Javascript、大規模な非常に大きなテーブルをDOMに追加する最良の方法
問題は、innerHTMLを使用してDOMにテーブルを追加することですが、これは15秒以上かかることがあり、ブラウザがクラッシュすることがあります。何とかこれを最適化するソリューションはありますか?テーブルは既にPHPの1つの文字列にあらかじめ組み込まれているので、追加するだけです。
ベストプラクティスはおそらくページネーションの小さいテーブルを使用することです(誰かが実際に10k +行をスクロールしたいとは思っていません)。
このような大きなテーブルを堅持しているのであれば、HTMLを行のまとまりに分割するか(または<tbody>
要素でグループ化することもできます)、次にタイマーを使用してDOM。
のようにテーブルを分割してPHPの小さな部分10個に分割し、その部分をビルドするためにjavascriptでタイマーを設定することができます。私はもっと簡単な方法があると思った。 – Ray
@レイ:その設定のウェブサイトでは、5MB以上のダウンロードが行われました。おそらくあなたが望むものではありません。私は正直なところ、おそらく他のアプローチを考えなければならないと思います。 – pimvdb
申し訳ありませんが、ありがとうございます。どのくらいダウンロードされているかをどのように知ることができますか?私はHTML/Javascriptの面ではあまりよくありません。私は火の虫がインストールされているが、実際の機能はほとんど分からない。 – Ray
何もできないことは、怠惰なHTMLテーブルをレンダリングすることができますが、それは多くの作業を必要とします。 – Raynos
さらに、あなたはajaxを介してクライアントにHTMLを送るべきではありません。 JSONを送信して、クライアントに表を作成させる必要があります。 – Raynos
テーブルはMySQLから来ているので、クライアントでビルドする方法はありません。 HTMLをajax経由で送信するのが悪いのはなぜですか? – Ray