問題タブ [eventvalidation]

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

c# - 無効なポストバックまたはコールバック引数。画像ボタンの場合のみ取得

次のエラーが発生します:

無効なポストバックまたはコールバック引数。<pages enableEventValidation="true"/>イベント検証は、構成またはページで使用して有効になり<%@ Page EnableEventValidation="true" %>ます。セキュリティ上の理由から、この機能は、ポストバックまたはコールバックイベントへの引数が、それらを最初にレンダリングしたサーバーコントロールから発生していることを確認します。データが有効で期待される場合は、ClientScriptManager.RegisterForEventValidationメソッドを使用して、検証のためにポストバックまたはコールバックデータを登録します。

私はこのようなものを持っていImageButtonますRepeater

これをクリックするImageButtonと、エラーが発生します。

しかし、のLinkButton代わりに試したところImageButton、正常に機能しています。私はフォローしてみましたLinkButton

解決策を教えてください。なぜこのエラーが発生するのはImageButton

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

asp.net - RegisterforEventValidation後の.net ListView eventValidationエラー

次のリストビューを定義しています

DataPager も定義しています

次に、enableEventValidation を true に設定しているため、アイテムも登録されています。

最初のページの読み込みは問題なく実行されますが、ページ ナビゲーションをクリックすると、コード ビハインドに送られ、エラーが発生する前に page_load を通過します。

ポストバックまたはコールバック引数が無効です。イベントの検証は、設定で使用するか、ページで <%@ Page EnableEventValidation="true" %> を使用して有効にします。セキュリティ上の目的で、この機能は、ポストバック イベントまたはコールバック イベントへの引数が、それらを最初にレンダリングしたサーバー コントロールから発信されていることを確認します。データが有効で期待される場合は、ClientScriptManager.RegisterForEventValidation メソッドを使用して、検証のためにポストバックまたはコールバック データを登録します。

イベント検証用に両方のアイテムを登録した後もエラーが発生し続ける理由がわかりません。RaiseCallbackEvent に入ることさえありません。

私はこれらのコントロールの初心者であり、.net の専門家でもありません。どんな助けやアドバイスも大歓迎です!

0 投票する
0 に答える
313 参照

c# - POST 要求のサーバー応答 - 無効なポストバックまたはコールバック引数

現在、外部 Web サイト (私のものではない) の一部のコンテンツを取得して解析するためのツールを開発しています。コードは何ももたらさないと思うので貼り付けませんが、何らかの形で有用だと思われる場合は貼り付けます。

私のツールの主な手順は次のとおりです。

  • 通常の webrequest/webresponse を使用して Web ページを取得します。
  • Web ページを解析して、解析する必要があるページ数を確認します (解析された Web ページは研究結果であるため、多くのページの結果を提供できます)。
  • 通常のブラウザーでのページ変更はフォームを送信することで行われるため、Web ページを解析して、このフォームのすべての POST パラメーター (非表示) を検査しました。
  • これらのパラメータを使用して POST リクエストを作成します
  • WebClient と UploadString() メソッドを使用して、サーバーに POST 要求を送信します。

残念ながら、最後の部分は機能せず、500 エラーがスローされますInvalid postback or callback argument. Event validation is enabled using ...

それが役立つ場合は、フォームの隠しパラメーターに名前付きのパラメーターEventValidationが存在し、それを POST 要求に提供します。

私はaspにあまり詳しくないので、誰かが何が起こっているのかを知っているかもしれません。私の英語の間違いを許してください

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

c# - C#で__VIEWSTATEと__EVENTVALIDATIONにアクセスします

ASP.NETでは、__ VIEWSTATEおよび__EVENTVALIDATIONの非表示フィールドの値をC#(サーバー側)の変数に取得して、たとえばRenderメソッドをオーバーライドすることはできますか?

私が試してみました:

これにより、ASP.NETの出力全体が得られます。文字列関数を使用して値を取得できますが、非常にクリーンなソリューションではありませんでした。これを行うためのより良い方法はありますか?

私が実際に必要としているのは、ポストバックが行われた後ではなく、最初の要求が行われたときの__VIEWSTATEと__EVENTVALIDATIONの値です。これは、最初の要求が行われたときに出力ストリームが形成された場合です。

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

jquery - あるリストボックスから別のリストボックスにアイテムを移動し、リストボックスでアイテムを取得する

ASP.NETウィザードコントロールがあります。2番目のステップでは、2つのリストボックスがあります。ページが読み込まれると、最初のListBoxアイテムがサーバーから入力されます。

次に、ユーザーはListBox1からデータを選択し、それをListBox2に移動します。次に、ユーザーはウィザードの[次へ]ボタンをクリックします。どういうわけか、ユーザーが[次へ]をクリックすると、ListBox2は空になります。

jQueryを使用してデータをListBox1からListBox2に移動します。

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

asp.net - EnabledEventValidation がオンの場合、Firefox で無効な ViewState エラーが発生する

F5を押すたびに再現する安定したエラーがあります。 エラー

2 つのグリッド (master-detail) があり、メイン グリッドで focus-row-changed イベントが発生したときにクライアント コードによって発生したコールバックで実際にエラーが発生します。このようなもの:

このバグはmozilla firefoxでのみ再現されます! (はい、IEは問題にされていません。それはちょっと奇妙です =))

そして非常に重要なこと: バグは、イベントの検証がオンになっている場合にのみ再現されます。つまり:

その理由は、必要なフィールドがロードされる前にコールバックが発生することであると示唆しました(私が得たように、イベント検証ではいくつかの非表示フィールドが使用されます)setTimeout

しかし、それは役に立ちませんでした。2 秒が経過すると、コールバックが開始され、エラーが発生します。更新時にのみ発生します。ページが最初に読み込まれたときにエラーは発生しません。グリッドの行キャッシュを無効にしても役に立ちませんでした。手伝いが必要!=))

編集:これがStackTraceです

Edit2:「EnsureEventValidationFieldLoaded」 - はい、この点はわかりますが、2 秒待っても読み込まれないのはなぜですか?

Edit3: これはIISの問題ではないことに気付くかもしれません(スクリーンショットの 127.0.0.1 ip)。

編集:アップ!!!

0 投票する
0 に答える
218 参照

javascript - ユーザーコントロールのRegisterStartupScriptにより、イベント検証エラーが発生します

単純なボタンクリックイベントにアタッチされたユーザーコントロールのコードビハインドに次のコードがあります。これにより無効なポストバックが発生するのを防ぐにはどうすればよいですか?イベント検証エラーを生成します。

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

asp.net - .NET 4.5 Framework がロード バランサーの背後にある 1 台のサーバーのみにインストールされている場合、ASP.NET EventValidation が失敗する

Web サーバーの 1 つに .net 4.5 Framework をインストールしました。当社のアプリケーションは .net 4.0 を対象としており、ロード バランサーの背後にある複数のサーバーで実行されます。

インストール後、いくつかの POST リクエストに対して次のエラー メッセージが表示されます。

error_name=System.ArgumentException error_message=ポストバックまたはコールバック引数が無効です。イベントの検証は、設定で使用するか、ページで <%@ Page EnableEventValidation="true" %> を使用して有効にします。セキュリティ上の理由から、この機能は、ポストバック イベントまたはコールバック イベントへの引数が、それらを最初にレンダリングしたサーバー コントロールから発信されていることを確認します。データが有効で期待される場合は、ClientScriptManager.RegisterForEventValidation メソッドを使用して、検証のためにポストバックまたはコールバック データを登録します。error_details=ソース: System.Web

リクエストの本文の __EVENTVALIDATION 値は、.net 4.5 がインストールされているサーバーからリクエストされた場合とは異なります。MSDN は、.net 4.5 での暗号化の変更はオプトイン構成を使用することを言及しているため、既定では下位互換性があるはずです。

イベントの検証を無効にせずに、構成の変更はありますか?

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

c# - EventValidation オブジェクトを逆シリアル化します

イベント検証ストアをシリアライズおよびデシリアライズしようとしています。ビューステートで同じことを行うために、MSDN のコードを使用しました。EventValidation オブジェクトからデータを取得できないようです。

System.Web.UI.EventValidationStore はオブジェクト型 (?)

私はハッシュセット、リストなどを使用しようとしました.

私が得るエラーは次のとおりです。

System.Web.UI.EventValidationStore に関する MSDN の情報は見つかりませんでした。

これが紛らわしい投稿である場合は申し訳ありません。質問の仕方がわかりません。

更新: 1 つの EventValidation base64 文字列のデシリアライズに成功しましたが、他の文字列はとらえどころのないことが証明されています。コード セグメントのものは機能していないようです。

概要: .NET で eventvalidation base64 文字列をデコード/逆シリアル化およびエンコード/シリアル化できる必要があります。

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

c# - JavaScript から選択リストを編集するときにイベント検証を渡す方法

私の ASP.NET サイトには、サーバーによっていくつかの要素が入力された 2 つの選択リストがあります。

理由が複雑すぎて説明できないため、JavaScript を使用して選択リストのオプションを変更し、いくつかの値を追加する必要があります。

もちろん、フォームをサーバーに送り返すとすぐに、これは検証を台無しにします (送信するか、他のフォーム要素からの PostBack としてAutoPostBack="true")。

ポストバックまたはコールバック引数が無効です。イベントの検証は、設定で使用するか、ページで <%@ Page EnableEventValidation="true" %> を使用して有効にします。セキュリティ上の理由から、この機能は、ポストバック イベントまたはコールバック イベントへの引数が、それらを最初にレンダリングしたサーバー コントロールから発信されていることを確認します。データが有効で期待される場合は、ClientScriptManager.RegisterForEventValidation メソッドを使用して、検証のためにポストバックまたはコールバック データを登録します。

現在、ページのデザイン全体を完全にオーバーホールするためのリソースと予算がありません。すべてを書き直す必要がない、ドロップダウンリストを変更する最も速く簡単な方法は何ですか?

フォームを送信するときに、JavaScript を介して追加された値が CodeBehind ファイルによって認識されるようにするには?