問題タブ [asp.net-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.
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 を更新する方法が必要です。
asp.net - ModalPopupExtenderが表示されているときに実行するJavaScriptを指定する方法
ASP.NET AJAX ModalPopupExtenderにはプロパティがありますがOnCancelScript
、OnOkScript
プロパティがないようですOnShowScript
。ポップアップが表示されるたびに実行するjavascript関数を指定したいと思います。
以前の状況では、をTargetControlID
ダミーコントロールに設定し、最初にいくつかのJSコードを実行し、次にJSメソッドを使用してポップアップを表示する独自のコントロールを提供しました。しかし、この場合、クライアント側とサーバー側の両方のコードからのポップアップを表示しています。
誰かがこれを行う方法を知っていますか?
ところで、TinyMCEエディターを作成したいモーダルにテキストボックスがあるので、これが必要でした。しかし、TinyMCE initスクリプトは非表示のテキストボックスでは機能しないため、モーダルが表示されたときにスクリプトを実行する方法を見つける必要がありました。
asp.net - ASP.Net AJAX ツールキット MaskedEditExtender のデータバインディングの問題
日付を含むデータベースがあり、MaskedEditExtender (MEE) と MaskedEditValidator を使用して日付が適切であることを確認しています。ただし、管理者が必要に応じてデータ (具体的には日付) を変更できるようにしたいと考えています。
データがページに表示されるときに、MEE フィールドにデータベース値を事前入力するにはどうすればよいですか? 「InitialValue」プロパティで「bind」を使用しようとしましたが、テキスト ボックスに入力されません。
ありがとう。
c# - aspx ページから ascx モーダル ポップアップにデータを渡すにはどうすればよいですか?
私はASP.NETにかなり慣れていないので、物事がどのように行われるかを学ぼうとしています。私は C# のバックグラウンドを持っているので、コード ビハインド部分は簡単ですが、Web 開発者のように考えるのは慣れていません。
チェックボックスのグリッドを含む aspx ページがあります。Button_Click イベントを介してコード化されたボタンを使用して、チェックされる行のリストを収集し、そのリストからセッション変数を作成します。同じボタンは、ascx ページのパネルを制御する ascx ページの ModalPopupExtender によって (TargetControlID を介して) 参照されます。
ボタンがクリックされると、モーダル ポップアップが開きますが、Button_Click イベントは発生しないため、モーダルはセッション データを取得しません。
2 つのページが別々であるため、aspx.cs コードから ModalPopupExtender を呼び出すことができず、ascx.cs コードからチェックボックスのリストにアクセスできず、セッション変数を設定する方法がわかりません。次に、プログラムで他の非表示のボタンまたはコントロールをアクティブにして、モーダルポップアップを開きます。
何かご意見は?
asp.net - 別のUpdatePanel内のRepeater内のUserControl内のUpdatePanel
はい、それはクレイジーに聞こえます....それはそうかもしれません。
最終的なupdatepanelは何もトリガーしないように見えます。更新パネルを更新するだけで、それをホストしているユーザーコントロールにコールバックしません。
何か案は?
編集:私はそれをポストバックしました、しかし最終的なユーザーコントロール内のコントロールは彼らのデータを失いました...メインリピーターが各ポストバックで再バインドしているので私はそれを考えています...これを今どこに持っていくべきかわかりません。
asp.net - asp.net Ajax での Stackoverflow スタイル通知
バッジを取得したり、スタック オーバーフローにログインしていない場合は、ページの上部に小さな通知バーが表示され、何かが起こっていることがわかります。
SOflow チームが JQuery を使用していることは知っていますが、asp.net AJAX で同じスタイルの通知システムの実装を誰かが知っているかどうか疑問に思っていました。
余談ですが、このスタイルの通知バーの「正式な」名前は何ですか?
asp.net - ASP.NET AJAX: ページの読み込みが完了した後に UpdatePanel を起動する
これは簡単だと思いますが、わかりません:
いくつかの UpdatePanels を含む ASP.NET ページがあります。UpdatePanels に「しばらくお待ちください」というテキストが表示された状態で、ページを完全に読み込みます。次に、ページが完全に読み込まれたら、コード ビハインド関数を呼び出して UpdatePanel を更新します。
このアイデアを実装するために必要な Javascript とコード ビハインドの組み合わせに関するアイデアはありますか?
SAL
PS: 関数呼び出しを Page_Load に入れようとしましたが、ページが配信される前にコードが実行され、実行したい関数に時間がかかるため、ページの読み込みに時間がかかりすぎます。
asp.net - UpdatePanel 内の ASP.NET バリデーター
ランタイムの制限により、古いバージョンの ASP.NET AJAX を使用しています。ASP.NET バリデーターを更新パネル内に配置しても機能しません。これらを機能させるためのトリックはありますか、それとも AJAX ツールキットに付属の ValidatorCallOut コントロールを使用する必要がありますか?
asp.net - グリッドビューが更新パネルにある場合でも、ページ全体が更新されます
ページにあるモーダルポップアップの updatepanel 内にあるグリッドビューがあります。
問題は、グリッドビュー内にあるイメージボタンをクリックするたびにページ全体が更新されることです。これにより、ページ全体が読み込まれます。ユーザーがクリックできないようにページの残りの部分をグレー表示しているため、これは非常に面倒です。
私が欠けているものを誰かが知っていますか。
編集:下部により良い解決策を入力しました
.net - ページ全体を更新せずに UpdatePanel 内の FileUpload コントロール?
Microsoftによると、FileUpload コントロールは AJAX UpdatePanel と互換性がありません。
次のように、フォームの送信ボタンに PostBackTrigger を追加できることを認識しています。
問題は、これにより、フォームが完全なポストバックを実行することを強制され、最初に UpdatePanel を使用するという点がすべて無効になることです。ページ全体が更新されないこの問題の回避策はありますか?