問題タブ [scriptmanager]

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.

0 投票する
3 に答える
783 参照

asp.net - asp.netで終了タグとスクリプトマネージャーを空のタグとして使用してスクリプトマネージャーを作成した場合の違いは何ですか

この形式で終了タグとスクリプトマネージャーを空のタグとして使用してスクリプトマネージャーを作成した場合の違いは何ですか。

空のタグとしてのスクリプトマネージャ。

私はいくつかのインタビューの質問の本でこの質問を見つけました..plezは私にそれについてのいくつかの知識を与えるか、私にリンクを与えます..

0 投票する
1 に答える
640 参照

asp.net - AJAX: ステータスバー: 関数の実行中に UpdatePanel の強制更新

更新パネル内にステータス バーとして使用したいラベルがあります。

基本的に、ユーザーは一連のタスクを実行するメイン機能を実行するボタンをクリックします。進行中の機能の状態についてユーザーに通知したいと思います。

ステージ 1: データを取得しています...

ステージ 2: 値を計算しています...

ステージ 3: 値を出力しています...

ステージ 4: 完了!

関数から updatepanel を直接更新しようとしましたが、関数の最後 (ステージ 4) でのみパネルを更新し、「完了!」と表示されます。(私が理解しているのは、それがどのように機能するかです)。

メイン機能とは別にパネルを更新するためにタイマーとスレッドを調べていましたが、誰かがより良いアイデアを持っている場合に備えてここに投稿すると思いましたか?

0 投票する
1 に答える
533 参照

asp.net - ASP.NETページごとに複数の複合スクリプトを登録する

いくつかの複合スクリプトをPageに配置したいと思います。ただし、ScriptManagerには列挙不可能なプロパティCompositeScriptが含まれています。

ページごとに複数のCompositeScriptを登録することは可能ですか?

0 投票する
1 に答える
931 参照

ajax - リンクボタンの最初のクリックでUpdatePanelが起動しない

.aspxページに更新パネルがあります。このaspxページ内に、いくつかのascxコントロールがあります。コントロールの1つにリンクボタンがあります。そのボタンを押すと、意図した結果が得られると思いますが、ページのちらつきやページのポストバックは見られないと思います。それは両方を行います。いくつかの検索情報を変更してリンクボタンをもう一度クリックすると、ページは非同期ポストバックを実行します(これは最初のクリックで期待したことです)。このシーケンスをフィドラーで実行した後、最初にボタンをクリックしたときに、後続のすべてのリクエストに含まれている情報が欠落していることがわかりました。

ctl00 $ ScriptManager1 = ctl00 $ cplContents $ updatePanelOrderSearch | ctl00 $ cplContents $ ucOrderSearchControl $ btnRange&EVENTTARGET = ctl00%24cplContents%24ucOrderSearchControl%24btnRange& ....。

上記は、クリック2、3などで得られるものです。これは、リンクボタンを初めてクリックしたときのリクエストには含まれていません。これが、私が初めて完全な非同期のポストバックを取得する理由であるかどうか疑問に思っています。

どんな助けでもいただければ幸いです。私のアップデートパネルコードは以下の通りです。

ありがとう

0 投票する
4 に答える
2321 参照

asp.net - 非同期ポストバック中に同時 AJAX WCF Web サービス要求を行う

AJAX を使用して ASP.NET WebForms ページで実行時間の長いタスク中にステータスの更新を提供したいと考えています。

ScriptManager を取得して、非同期ポストバックと同時に Web サービス要求のスクリプトを実行および処理する方法はありますか?

ページに Web サービス要求を行うスクリプトがあります。ページの読み込み時に実行され、setInterval() を使用して定期的に実行されます。非同期ポストバックが開始される前は正しく実行されていますが、非同期ポストバック中に実行が停止し、非同期ポストバックが完了するまで再び実行されません。

長時間実行タスクを実行する非同期ポストバックをトリガーするボタンを備えた UpdatePanel があります。また、データを取得してページに表示するために正しく動作している AJAX WCF Web サービスのインスタンスもありますが、前述のように、非同期ポストバックが完了するまでデータを取得して表示しません。

非同期ポストバック中に、実行時間の長いタスクが更新をページから Web サービスに送信します。

問題は、Web サービスをデバッグしてステップ実行し、ステータスの更新が正しく設定されていることを確認できますが、非同期ポストバックが完了するまで更新がクライアント スクリプトによって取得されないことです。

スクリプト マネージャーは非同期ポストバックの実行でビジー状態のようです。そのため、ポストバックが完了するまで setInterval() を介して他の JavaScript を実行しません。

スクリプト マネージャーを取得する方法、または非同期ポストバック中にスクリプトを実行して WCF Web サービスからデータを取得する方法はありますか?

PageRequestManager を使用して、非同期ポストバックのクライアント側の BeginRequest イベントでスクリプトを実行するさまざまな方法を試しましたが、スクリプトが実行され、ページ要求の実行中に setInterval() を介して実行する必要があるコードの処理が停止します.

0 投票する
2 に答える
2187 参照

javascript - ScriptManager は JavaScript を複製します

たとえば、gridview itemtemplate で使用できるユーザー コントロールがあります。これは、ページの読み込み時にコントロールがページ上にある場合とない場合があることを意味します。コントロールが itemtemplate 内にある場合、(updatepanels を介して) 非同期ポストバックを介してグリッドビューを表示します。

コントロール自体は JavaScript に依存しているため、スクリプトブロックを登録します。最初に使用した

しかし、これは非同期ポストバック (updatepanels) では機能しないため、非同期ポストバック後にページにスクリプトを登録できる ScriptManager を使用して同じことを試しました。すごい!。

ただし、ScriptManager (私が知っていること) には、スクリプトが既にページにあるかどうかを確認する機能がないため、ポストバックごとにスクリプト ブロックの複製が生成されます。これはもちろん望ましくない動作です。

Google で実行したところ、PageRequestManager の Dispose() メソッドを呼び出すことができることがわかりました。これは、スクリプトをクリアしてから再度追加するため、機能します (これにより、未使用のスクリプト ブロックを削除済みから削除するという問題も解決します)。コントロール)。

ただし、ここに投稿して以来、もちろんマイナス面があります:)。Dispose() メソッドは、マスター ページのインスタンスも破棄します。これにより、そこで実行されているスクリプトが、非同期ポストバック (updateprogress など) の後に機能しなくなります。

では、ScriptManager またはその他のツールを使用してページにスクリプトが既に存在するかどうかを確認して、重複したスクリプトを挿入するのを防ぐ方法はありますか? また、特定のスクリプト ブロックを削除する方法はありますか (たとえば、itemtemplate のアイテムを削除する場合)。

よろしくお願いします。

0 投票する
1 に答える
2098 参照

asp.net - ScriptManagerProxy コントロールが存在する場合、プログラムで ScriptManager を無効にする

プログラムで ScriptManager を無効にするためのこのアドバイスに従ってみましたが、役に立ちませんでした: 特定のページで ScriptManager を無効にする

StandardScriptManager.ascx :

StandardScriptManager.ascx.vb :

DisableAllScriptsが true の場合、は<h1>表示されませんが、スクリプトは引き続きページに追加されます。これは、ページの他の場所に ScriptManagerProxy オブジェクトがあるためだと思われます。

も試してみMe.Controls.Clear()ましたPage.Initが、これはわかります

ScriptManager を無効にする簡単な方法がないのは腹立たしいことです。コントロールにはEnabledプロパティがなく、設定できませんScriptManager.Visible=False

何か案は?

0 投票する
3 に答える
2521 参照

asp.net - バージョン番号をasp:ScriptManagerのcompositescriptタグに追加します

次のシナリオを機能させようとしています。

asp:scriptmanager / CompositeScriptsを使用してスクリプトをいくつかのスクリプトブロックに結合しますが、テストシステムにデプロイするたびに、テスターがcssとjavascript(ブラウザーキャッシュ)の更新バージョンを取得できないという問題が発生します。CSSの場合、たとえばcssurlにSiteversionパラメーター「?v=1.0.190」を追加する独自のcssユーザーコントロールを定義しました。このサイトバージョンはweb.config/appsettingsで定義されており、デプロイごとにバンプされます。

JavaScriptにも同じ戦略を使用できるようにしたかったのですが、これまでのところ成功していません。スクリプトタグをレンダリングするとき。Scriptmanagerがレンダリングします

現在構成されているサイトバージョンが1.0.190だったとすると、レンダリングしたいと思います

スクリプトマネージャからの「script」html出力を取得して変更できるようにするにはどうすればよいですか?Render、RenderChildren、またはRenderControlでレンダリングされたものには存在しないようです

あなたのアンドレアス

0 投票する
2 に答える
2350 参照

asp.net - ページに複数の ScriptManager を含めることはできますか? はいの場合、どのような条件でそれが必要になりますか?

ページに複数の ScriptManager を含めることはできますか? はいの場合、どのような条件で必要になりますか?

0 投票する
1 に答える
2509 参照

c# - ページに JavaScript ファイルが既に読み込まれているかどうかを確認する

javascriptファイルがすでにページにロードされているかどうかをC#でチェックする方法は? ページにロードする別の名前空間にユーザー コントロールがあるとします。scriptmanager に登録する前に、スクリプト ファイルが存在しないかどうかを確認したいと思います。