問題タブ [ajax]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ajax - 現在の状態に一致するように AJAX アプリのアドレス バーの URL を変更する
私は AJAX アプリを作成していますが、ユーザーがアプリ内を移動すると、ページのリロードがないにもかかわらず、アドレス バーの URL が更新されるようにしたいと考えています。基本的にはいつでもブックマークして現状に戻れるようにしてほしいです。
AJAX アプリで RESTfulness を維持するために、人々はどのように対処していますか?
asp.net - AJAX WebControls への簡単な方法
最適化しようとしている Web アプリケーションがあります。一部のコントロールは dialog-style に隠されていますDIVs
。そのため、ユーザーが見たい場合にのみ、AJAX 経由で読み込ませたいと考えています。これは、大部分がリテラル ベースのコントロール (さまざまなメニューやウィジェット) では問題ありませんが、「ダーティ」コントロールと呼ばれるものがある場合、つまり、大量の情報を に書き込みViewState
、大量の CSS やスクリプトをページに配置し、多くを必要とするものです。参照など - これらを「ページ外」に移動することは一見不可能です。特に、ASP.NET がポストバックでどのように反応するかを考えると。
Render をオーバーライドし、移動したいビットのマーカーを見つけ、そこに AJAX プレースホルダーを配置する何らかのステップを検討していましたが、サーバーのオーバーヘッドが極端に見えるだけでなく、完全なハックのようにも感じます。さらに、ここでの重要な要素は、検証コントロールを含むフォームを含むダイアログ ボックスであり、コントロールとそれに必要なスクリプトをどのように移動するか想像できません。
私の熱狂的な想像力の中で、私はこれをしたい:
悲しいことに、私はこれが夢であることを知っています。
サーバーに過度の負荷をかけることなく、迅速かつ簡単な AJAX 化にどれだけ近づけることができるでしょうか?
asp.net - ASP.NET AJAX / ICallbackEventHandler を使用した状態の追跡
ASP.NET AJAX ページで状態を維持することに問題があります。短いバージョン:非同期呼び出し中にサーバーが行った状態の変更を反映するために、非同期コールバックが行われた後にページの ViewState を更新する何らかの方法が必要です。
これはよくある問題のようですが、説明のために私のシナリオを説明します。
私は、いくつかの JavaScript 拡張機能 (つまり、列と行をドラッグ アンド ドロップする機能) を備えたグリッドのようなコントロールを持っています。列または行が新しい位置にドロップされると、AJAX メソッドが呼び出されてコントロール サーバー側に通知され、対応するサーバー側イベント ("OnColumnMoved" または "OnRowMoved") が発生します。
ASP.NET AJAX 呼び出しは、既定では、ページ全体を要求として送信します。このようにして、ページは完全なライフサイクルを通過し、viewstate が保持され、RaiseCallbackEvent メソッドが呼び出される前にコントロールの状態が復元されます。
ただし、AJAX 呼び出しはページを更新しないため、列または行が移動された後でも、ViewState はコントロールの元の状態を反映します。したがって、クライアント側のアクションが 2 回目に発生すると、AJAX 要求がサーバーに送られ、ページとコントロールが再度構築されて、最初の列または行が移動された後の状態ではなく、コントロールの最初の状態が反映されます。
この問題は、多くの意味合いにまで及びます。たとえば、グリッドに新しい項目を追加するクライアント側/AJAX アクションがあり、行がドラッグされた場合、グリッドはクライアント側よりも項目が 1 つ少ないサーバー側で構築されます。
最後に、私の特定の例について最も真剣に説明します。実際のデータ ソース オブジェクトは、ページの ViewState に格納されます。これは、操作されたデータのステートフル コピーを保持できるようにするための設計上の決定であり、多くの操作の後に DB にコミットするか、ユーザーがバックアウトした場合に破棄することができます。それを変えるのはとても難しい。
繰り返しますが、AJAX メソッドが起動された後、コールバックでページの ViewState を更新する方法が必要です。
ajax - プログレッシブエンハンスメントとは?
Jeff は、jQuery を使用して stackoverflow を記述することについて話しているときに、「プログレッシブ エンハンスメント」の概念について言及しました。
簡単なグーグルの後、私はそれについてのいくつかの高レベルの議論を見つけました.
プログラマーとして始めるのに適した場所を誰でもお勧めできますか?
具体的には、私は PHP で Web アプリケーションを作成しており、YUI を使用してページを改善したいと考えていますが、それらの多くは非常に JavaScript ベースのようであり、ほとんどの作業は JavaScript を使用して行われています。Javascript を使用せずにサイトを表示すると、ほとんどのサイトが壊れてしまう可能性があるためです。
誰もがこのアイデアを使い始めるのに適した場所を持っています.私は言語についてはあまり気にしません.
理想的には、最初に静的 HTML の作成を開始し、次に YUI (またはその他の Ajax フレームワーク) を追加して、よりリッチなクライアントのメリットを得る方法を知りたいと思います。
ajax - ASP.NETAJAX部分レンダリングはSharePoint2007アプリケーションページ内で機能しますか?
私と私の簡単なページがScriptManager
あり、UpdatePanel
私のラベルContentTemplate
は1つです。のテキストを更新できるように、それListBox
をキャッチしようとしています。どの設定を微調整しようとしても、常にフルページのポストバックが表示されます。OnSelectionChanged
Label
これは本当にうまくいかないのでしょうか、それとも私はこれを台無しにするだけですか?
ajax - デバッグ: IE6 + SSL + AJAX + 投稿フォーム = 404 エラー
設定:
問題のプログラムは、AJAX 呼び出しを介して、呼び出し元と同じパッケージに含まれるターゲット プロシージャにフォーム データを送信しようとします。これは、安全な接続 (HTTPS) を使用するサイトに対して行われます。ここで使用されているテクノロジーはPLSQLとDOJO JavaScript ライブラリーです。開発ツールは基本的にテキストエディタです。
コードスニペット:
問題:
IE6 (ユーザーベース全体で使用) を使用すると、サーバーから返される応答が 404 エラーになります。
観察:
プログラムは Firefox で正常に動作します。
呼び出しプロシージャは、同じパッケージ内のプロシージャをターゲットにすることはできません。
呼び出し手順は、外部サイト (http、https の両方) をターゲットにすることができます。
フォーム データの投稿ではない、パッケージ内の他の AJAX 呼び出しは正常に機能します。
私はインターネットを検索し、熟練したチーム メンバーに相談しましたが、この問題に十分に対処するものは何も見つかりませんでした。
* Dojo サポート フォーラムで Q&Aを試みました。
質問:
どのようなトラブルシューティング手法をお勧めしますか?
HTTPS 分析に推奨されるトラブルシューティング ツールは何ですか?
問題が何であるかについての仮説はありますか?
完全な (悪い) ハッキングではない回避策のアイデアはありますか?
エド。ソリューション
lomaxx、フィドラーチップの thx。それを入手してデバッグツールとして使用することがどれほど素晴らしいことか、あなたにはわかりません。それを起動した後、これは私が見つけたものであり、どのように修正したかです(少なくとも短期的には):
サーバーからのそのメッセージを見た後、私は Fiddler をもう少し動かして、そこから他に何が学べるかを調べました。Web フォームの値を表示する WebForms タブがあることがわかりました。ご存知でしょうか、xxx_DISPLAYED_
上記の " " フィールドがその中にありました。
PLSQL
Webコードで明示的に作成していないため、これらのフィールドが存在する理由はまだよくわかりません。しかし、正しく機能するためには、ターゲット プロシージャにそれらをパラメータとして含める必要があることを理解しています。繰り返しIE6
ますが、Firefox は正常に動作していたので、これは私の場合のみです。
まあ、それは短期的な答えとそれを修正するためのハックです。願わくば、この分野でのもう少しの作業が、ここで行われている基本事項のより良い理解につながることを願っています.
java - ICE Faces fileInput ファイル パスとファイル名のプロパティ
ICE Faces fileInput コントロールを利用して、ユーザーが選択したファイルに基づいて Web ページの入力フィールドに入力するファイル パスとファイル名を入力したいと思います。ファイル転送操作を実際に実行せずにこれらのプロパティをキャプチャするにはどうすればよいですか?
asp.net - ASP.Net Web サイトまたはアプリケーションの高速化
Ajax.Net 対応の ASP.Net 2.0 Web サイトを持っています。サイトとデータベースの両方のホスティングは、データベースのスキーマと同様に、私の手に負えません。私が管理しているハードウェアでのテストでは、サイトのパフォーマンスは良好ですが、クライアントのハードウェアでは、ページのリロードまたは変更時に顕著な遅延が発生します。
私がやりたいことは、アプリケーションを配信するときに、アプリケーションをできるだけコンパクトかつ高速にすることです。1 つのアイデアは、サイトのすべての静的リソースに有効期限を設定して、ページの読み込み時にそれらが呼び出されないようにすることです。リソースとは、画像、リンクされたスタイル シート、および JavaScript ソース ファイルを意味します。これを行う簡単な方法はありますか?
.Net Web サイトを最適化するには、他にどのような方法がありますか?
更新: 私はサイトで YSlow を実行しましたが、最も打撃を受けた領域は、読み込まれる JavaScript とスタイル シートの数 (23 の JS ファイルと 5 つのスタイル シート) です。1 つ (メイン スタイル シート) を除いて、すべて Ajax.net と ASP によって挿入されています。なぜそんなに多いのですか?
javascript - JavaScriptを使用してオーバーフローしたDIVをスクロールする
divのサイズを変更してページ内でドラッグしても、overflow:autoを使用してコンテンツをdiv内に保持するdivがあります。私はいくつかのajaxを使用してサーバーからテキストの行を取得し、それらをdivの最後に追加しているので、コンテンツは下向きに成長しています。これが発生するたびに、JSを使用してdivを一番下までスクロールし、チャットルームやコマンドラインコンソールが機能するのと同じように、最後に追加されたコンテンツが表示されるようにします。
これまで、このスニペットを使用して実行してきました(jQueryも使用しているため、$()関数を使用しています)。
しかし、それは私に一貫性のない結果を与えています。動作する場合と動作しない場合があり、ユーザーがdivのサイズを変更したり、スクロールバーを手動で移動したりすると、完全に動作しなくなります。
ターゲットブラウザはFirefox3であり、制御された環境に展開されているため、IEで動作する必要はまったくありません。
アイデアはありますか?これは私を困惑させました。ありがとう!
asp.net - ASP.net AJAX ドラッグ/ドロップ?
これに対する既製の解決策があるかどうか誰かが知っているかどうか疑問に思います.ASP.net Webサイトにリストがあり、ユーザーがドラッグアンドドロップでリストを再ソートできるようにしたい. さらに、ユーザーが最初のリストから項目をドラッグできる 2 番目のリストが欲しいです。
これまでのところ、2 つの解決策を見つけました。
- Ajax Control Toolkitの ReorderList は、変更がデータベースに保持されるようにするために多少の手作業が必要であり、リスト間のドラッグ アンド ドロップをサポートしていません。
- TelerikのRadGridは、私が望むすべての機能を備えていますが、価格が私の予算をはるかに超えています。
他の誰かが、さらなる調査を行うためのアイデアや少なくともいくつかのキーワード/ポインターを持っていますか? 特に、2 つのリスト間のドラッグ/ドロップは、ASP.net でそれを行う方法について、私にはよくわかりません。
ちなみにTarget Frameworkは3.0です。