- PR -

DropDownListのイベント発生条件について

1
投稿者投稿内容
NORI
常連さん
会議室デビュー日: 2004/05/26
投稿数: 21
投稿日時: 2004-06-03 15:54
vb.netを使ってASP.NET Webアプリケーションを作成しているのですが、DropDownListのイベント発生条件がわかりません。
処理を実行し、Web表示状態にしたところで、DropDownListの項目を選択し対象データを変更した時に、イベントを拾いたいのですがイベントが発生しません。
このような処理をしたい時は、どのようにイベントを拾えばよいのでしょうか?
解る方、教えてください。

ただし、ボタン等を配置してWeb画面再描画等によるイベント発生で取得する方法は駄目ということでお願いします。
あくまでも、現在のWeb表示がされている中だけでDropDownListの項目選択が変わった時のイベント取得という事でお願いします。
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2004-06-03 16:12
引用:

NORIさんの書き込み (2004-06-03 15:54) より:
vb.netを使ってASP.NET Webアプリケーションを作成しているのですが、DropDownListのイベント発生条件がわかりません。
処理を実行し、Web表示状態にしたところで、DropDownListの項目を選択し対象データを変更した時に、イベントを拾いたいのですがイベントが発生しません。
このような処理をしたい時は、どのようにイベントを拾えばよいのでしょうか?
解る方、教えてください。

ただし、ボタン等を配置してWeb画面再描画等によるイベント発生で取得する方法は駄目ということでお願いします。
あくまでも、現在のWeb表示がされている中だけでDropDownListの項目選択が変わった時のイベント取得という事でお願いします。



再描画したくないのであれば、DropDownListのAttributesプロパティに、onchange時の動作を記述してやれば可能です。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-06-04 10:03
引用:

NORIさんの書き込み (2004-06-03 15:54) より:

ただし、ボタン等を配置してWeb画面再描画等によるイベント発生で取得する方法は駄目ということでお願いします。
あくまでも、現在のWeb表示がされている中だけでDropDownListの項目選択が変わった時のイベント取得という事でお願いします。


 NAL-6295さんの方法も1つとして。


 なんか、質問と条件が矛盾していますよ。ASP.NETが用意している部品は、サーバ側で処理をするものです。したがって、そのイベントもサーバ側で発生します。

 動作的には、サーバ側にフォームが提出されたときに、前回の値と提出された値を比較して、イベントが発生します。DropDownList.SelectedIndexChangedイベントはサーバ側で発生し、サーバ側で処理します。サーバ側で処理する以上、ページの再読込が発生します。

 ボタンを配置しないということだけなら、AutoPostBackプロパティをtrueにすれば良いのですが、それだとページの再読込が発生します。ページの再読込を発生させずに、ASP.NETの部品で発生するイベントを処理することはできません。

 「イベントを拾う」のを、VB.NETのコードで行う、と仮定していますが、それで良いですよね?JavaScriptで拾うなら、VB.NETのコード上でAttributes.Addしてやればよいです。

[ メッセージ編集済み 編集者: Jitta 編集日時 2004-06-04 10:09 ]
NORI
常連さん
会議室デビュー日: 2004/05/26
投稿数: 21
投稿日時: 2004-06-07 14:02
回答ありがとうございます。

Jittaさんの言う通りに確かに条件が矛盾してましたね。申し訳ございません。
最終的に、Jittaさんの助言にしたがい、AutoPostBackプロパティをtrueにする事で解決しました。
多少動作の認識を間違えていたようで矛盾な条件を出してしまい申し訳ありませんでした。
1

スキルアップ/キャリアアップ(JOB@IT)