問題タブ [prerender]

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 投票する
0 に答える
2764 参照

asp.net - PreRender 後にエクステンダー コントロールが登録されない場合がある

Dynamic AjaxControls を使用して Dynamic UserControls を作成しています。次に、各 UserControls をコレクションに格納します。ポストバックで、コレクション内の UserControls を呼び出して、インターフェイスを再作成します。標準の HTML コントロールのみを使用する場合は機能しますが、AJAX コントロールでは機能しません。PostBack Extender controls may not be registered after PreRender でこのエラーが発生します。これまでのところ、次のことを試しました。

  1. ページおよびユーザーコントロールの MyBase.OnPreRender(e)
  2. OnInitのEnsureChildControls()
  3. MasterPage に ScriptManager を追加しました このようなものはどれも機能していません...

ユーザーコントロール内のコントロールを含むすべてのコントロールを再作成すると、エラーは発生しませんが、ユーザーコントロールのコレクションを呼び出すのではなく、ポストバックを行うのに永遠に時間がかかります。

スタックトレース:

System.Web.UI.ScriptControlManager.RegisterExtenderControl[TExtenderControl] (TExtenderControl extenderControl、コントロール targetControl) で

System.Web.UI.ScriptManager.RegisterExtenderControl[TExtenderControl] (TExtenderControl extenderControl、コントロール targetControl) で

System.Web.UI.ExtenderControl.RegisterWithScriptManager() で

System.Web.UI.ExtenderControl.OnPreRender (EventArgs e) で

d:\hg\act\Server\AjaxControlToolkit\ExtenderBase\ExtenderControlBase.cs:line 365 の AjaxControlToolkit.ExtenderControlBase.OnPreRender(EventArgs e) で

d:\hg\act\Server\AjaxControlToolkit\DropDown\DropDownExtender.cs:line 157 の AjaxControlToolkit.DropDownExtender.OnPreRender(EventArgs e) で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Control.PreRenderRecursiveInternal() で

System.Web.UI.Page.ProcessRequestMain で (ブール値 includeStagesBeforeAsyncPoint、ブール値 includeStagesAfterAsyncPoint)

0 投票する
7 に答える
1567 参照

asp.net - Page_PreRenderが実行されたかどうかを確認するにはどうすればよいですか?

オーバーライドされたPageOnUnloadでメソッドを実行していますが、Page_PreRenderメソッドが実行されている場合に限ります。

明らかに、Page_PreRenderにいるときにクラスレベルのブール値を反転してOnUnloadでチェックできますが、Page_PreRenderが実行されたことを確認するより本質的な方法がある場合は、それを使用したいと思います。

何か案は?

考えてくれてありがとう。

更新:私の質問を少し言い換えさせてください。Pageライフサイクルに固有の簡単な方法があるかどうかの答えを探しています。おそらくASP.Netフレームワークによって設定されるプロパティであり、Page_PreRenderの実行後とPage_PreRenderの実行後では異なるものです。走りません。

現在、Page_PreRenderにブール値を設定して、実行されたかどうかを通知しています。それは機能しますが、余分なブールチェックを追加せずに同じことを達成する方法がある場合、このソリューションは好きではありません。Page_PreRender中に発生するイベントを作成することは、可能であれば避けたいのと同じレベルの冗長性です。

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

c# - ポストバックで使用される検証グループを取得します

C# (.NET 2.0) のレガシー プロジェクトを使用しています。このプロジェクトには、2 つの検証グループがあります。1 つはカスタム ログイン コントロール用で、もう 1 つはユーザーがニュースレターに送信するためのものです。私が遭遇した問題は、ユーザーがニュースレターを購読するために送信すると、ユーザーがログインしようとしたときにのみトリガーされる必要がある page_prerender() メソッドでカスタム コードがトリガーされることです。

必要に応じてカスタム コードを無視できるように、2 つのグループのどちらがポストバックで使用されているかを認識するソリューションを探していました。私の考えは、2 つの検証グループのどちらが検証に使用されているかを確認することでした。残念ながら、グーグルで無駄な数時間を費やした後、検証時にどの検証グループが使用されているかを実際に知る方法を知る方法を見つけることができませんでした。調べる方法はありますか?

次のコードは、LoginButton が押されたときにのみトリガーする必要があり、Pre_render() で実行する必要があります。または、代わりに正しい ValidationGroup を渡します (ここでは null が渡されます)。

0 投票する
6 に答える
5230 参照

php - すべてのデータを受信する前に Web ページをレンダリングする

現在、読み込みに時間がかかる Web ページがあります。ページの php 側は多くのデータ処理と計算を行いますが、これは (残念ながら) 避けられません。PHPの処理中にページに何かを表示したいと思います。残念ながら、ページの大部分は PHP の計算に依存しています。

私が持っている現在の解決策は次のとおりです。

HTML/PHP (はじめに):

ジャバスクリプト:

ページのレンダリング中に、ページのレンダリング中に小さな待機メッセージが表示されるという意味でうまく機能します。しかし、ページがすべてのデータを受信するのを待ってから何かをレンダリングするという意味では機能しません。どうすれば後者を達成できますか?

1 つの注意点: doctype の前の空白行には 1024 個のスペースが含まれています。これは、ブラウザが特定の文字数を読み取るまで待ってから何かをレンダリングしようとする場所 (StackOverflow を含む) を読んだためです。

どんなアイデアでも大歓迎です。ブラウザには、私を当惑させる難解なトリックやハックがたくさんあります。

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

sharepoint - WebPartのデータ取得コードがPreRenderメソッドで記述されている理由

2つのWebパーツを接続するためのコードを記述しているときに、CreateChildControlメソッドでプロバイダーWebパーツからデータを取得しようとすると、接続オブジェクトがNULLとして表示されることに気付きました。ただし、PreRenderメソッドでコードを記述した場合、すべてが正常に機能しています。 PreRenderメソッドのみで検索コードを書く特別な理由はありますか?

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

filestream - C# .NET 4.0 filestream または streamreader で .aspx ページを読み取って、Web 要素の ID の値を取得する

だからここに、レンダリングされる前にローカルホスト上のフォルダーを調べるプログラムを書いている問題があります。Web 要素の ID の値を取得し、それをリスト オブジェクトに格納できるようにしたいと考えています。

たとえば、次のページがあります。

プログラムは C:\WebFolder\Page.aspx に移動し、ファイルを読み取り、ページ上のすべての CustomControl を見つけてから、コントロールの種類 (MyPhoneValidationControl または MyEmailValidationControl) を取得し、ID の値 (PhoneValidator、EmailValidator) を割り当てます。 Control オブジェクトのプロパティとして。

C#.NET 4.0 を使用しています。ページがレンダリングされた後、要素の ID を取得するのは簡単ですが、それがカスタム コントロールであることは示されません。カスタム コントロールを確認するには、Web サーバー (IIS など) によってレンダリングされることなく、.aspx ファイルを確認する必要があります。

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

html - プリフェッチ/プレレンダーをテストする方法

プリフェッチ/プレレンダーシステムを使用して、いくつかの主要なリソースとページの読み込みを開始しました。

問題のリソースが実際にプリロードされていることを確認する方法はありますか?

0 投票する
6 に答える
5187 参照

javascript - 画像のサイズ変更により、WebKitブラウザーでわずかな短いピクセル化が実現します

jsfiddle: http: //jsfiddle.net/UenFN/。アニメーションの後のわずかな短いピクセル化に注意してください。このエラーは、WebKitブラウザーでのみ発生します。

jQueryを使用して、画像のサイズを小さいサイズに変更します。新しい寸法は、正確に古い寸法の半分です。ただし、サイズを変更した直後は、画像がわずかにピクセル化されて表示され、約2秒後に見栄えが良くなります。

この問題を解決するにはどうすればよいですか?

編集:まだ進歩はありません。どんなアイデアでも大歓迎です。

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

asp.net - Gridview の Prerender イベントで現在の行インデックスを取得するにはどうすればよいですか?

PreRender イベントで現在の行のインデックスを取得したいと思います。どうすればできますか?