20

最適化しようとしている Web アプリケーションがあります。一部のコントロールは dialog-style に隠されていますDIVs。そのため、ユーザーが見たい場合にのみ、AJAX 経由で読み込ませたいと考えています。これは、大部分がリテラル ベースのコントロール (さまざまなメニューやウィジェット) では問題ありませんが、「ダーティ」コントロールと呼ばれるものがある場合、つまり、大量の情報を に書き込みViewState、大量の CSS やスクリプトをページに配置し、多くを必要とするものです。参照など - これらを「ページ外」に移動することは一見不可能です。特に、ASP.NET がポストバックでどのように反応するかを考えると。

Render をオーバーライドし、移動したいビットのマーカーを見つけ、そこに AJAX プレースホルダーを配置する何らかのステップを検討していましたが、サーバーのオーバーヘッドが極端に見えるだけでなく、完全なハックのようにも感じます。さらに、ここでの重要な要素は、検証コントロールを含むフォームを含むダイアログ ボックスであり、コントロールとそれに必要なスクリプトをどのように移動するか想像できません。

私の熱狂的な想像力の中で、私はこれをしたい:

AJAXifier.AJAXify(ctlEditForm);

悲しいことに、私はこれが夢であることを知っています。

サーバーに過度の負荷をかけることなく、迅速かつ簡単な AJAX 化にどれだけ近づけることができるでしょうか?

4

3 に答える 3

5

Telerik のRadAjaxコントロールを確認してください。これにより、UpdatePanels の使用を回避し、呼び出し元のコントロールと、呼び出し元のコントロールが "Ajax 化" されるべきコントロールとの間の直接的な関係を宣言することで、サーバーとクライアントの間でやり取りされる情報の量を制限できます。ポストバックを送信します。

于 2008-08-05T14:19:26.860 に答える
2

今週末、地元の書店に足を運び、コーヒーを飲みながら、Manning Press の jQuery in Action を見つけることをお勧めします。この 300 ページの本の最初の章をストアで読んで、心に響いたら購入してください。

jQuery を使用すると、ここで説明したことを簡単に実行できることに驚かれると思います。バックグラウンドでのサーバーへの ajax 呼び出しから、訪問者のアクションに基づく div タグの表示と非表示まで。書かなければならないコードの量は非常に少ないです。

優れた JavaScript ライブラリはたくさんありますが、これは私が気に入っているライブラリの 1 つに過ぎず、簡単に始めることができます。タグを使用して現在の jQuery ファイルへの参照を含めることから始め、ページを操作するための数行のコードを記述します。

于 2008-09-05T15:54:18.620 に答える
1

ステップ1は、「汚れた」部分を自己完結型のユーザーコントロールにすることです

ステップ 2 は、それらのコントロールを消費ページに埋め込むことです。

ステップ 3 は、各ユーザー コントロール タグを独自の Asp:UpdatePanel にラップすることです。

ステップ 4 は、既存の値をビューステートと照合するプロパティから読み取ることにより、コントロールが必要なデータを確実に取得できるようにすることです。これにより、コードが醜いグローバル変数に依存することはわかっていますが、これを行うための迅速な方法です。

あなたのマイレージは異なる場合があります。

于 2008-08-05T14:19:01.700 に答える