1

TextChangedイベントのあるテキストボックスがたくさんあります。上部にはマスターテキストボックスもあります。マスターテキストボックスを変更して[すべて変更]ボタンを押すと、テキストボックスのページ全体が変更されます。

現在、ボタンはほぼ完全にクライアント側に存在します(jqueryを使用してテキストボックスを変更するだけです)が、プログラムが100以上のTextChangedイベントを実行する前に、ボタンが押されたかどうかを知りたいです。ブール値をtrueに設定するサーバー関数を追加してみましたが、最初に発生することを期待していましたが、TextChangedイベントが最初に発生します。

TL;DRポストバック後にイベントを通過する順序をプログラムに指示する必要があります。

4

1 に答える 1

3

ASP.NETページのライフサイクルでイベントの順序を変更することはできませんが、必要なことを実行できる可能性があります。ここに提案があります...それをFWIWにしてください...

クライアント側では、Javascriptイベントハンドラーを追加(または既存のイベントハンドラーを修正)して、サーバー側のフォームフィールドにマジック値を入力できます(実際には何でも構いません)。ポストバックで、Page_Load内(および/またはTextChangedイベントハンドラー内)で、IsPostback=trueの場合の値の存在を確認します。同じチェックを行うには、(多数の)異なるハンドラーを接続する必要がある場合があるため、これは面倒すぎる可能性がありますが、少なくともアイデアの種です。

その非常にエレガントなことを約束することはありませんが、少なくともあなたが必要なものに近づくはずです。

于 2012-09-25T20:42:40.070 に答える