- PR -

ASP.NET Dropdownlist のselectedindexイベント

1
投稿者投稿内容
大ベテラン
会議室デビュー日: 2003/09/16
投稿数: 193
お住まい・勤務地: 千葉県
投稿日時: 2004-10-30 17:26
いつもお世話になっております

 基本的な事かもしれませんが教えて下さい

 DataGrid 内に 2つの
Autopostback=true にしたDropdownlist があります
 Page_Loadで 2つのうちの、どちらの、selectedindexが
 発生したかを、識別する方法ってありませんでしょうか?

   よろしくお願い致します

           
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2004-10-30 17:39
NAL-6295です。

AutoPostBack時にRequest.Params[0]にイベントの発生したコントロール名が
入っているようなのでこれで識別できるかもしれません。

ページロード時に
コード:

if(this.Request.Params.Count > 0)
{
this.RegisterStartupScript("test","<script language=\"javascript\">alert('" + this.Request.Params[0] + "');</script>");
}




と入れて、試したら、そんな感じでした。

[ メッセージ編集済み 編集者: NAL-6295 編集日時 2004-10-30 17:41 ]
大ベテラン
会議室デビュー日: 2003/09/16
投稿数: 193
お住まい・勤務地: 千葉県
投稿日時: 2004-10-30 18:20
ありがとうございます

引用:

NAL-6295さんの書き込み (2004-10-30 17:39) より:
NAL-6295です。

AutoPostBack時にRequest.Params[0]にイベントの発生したコントロール名が
入っているようなのでこれで識別できるかもしれません。

[ メッセージ編集済み 編集者: NAL-6295 編集日時 2004-10-30 17:41 ]



Request.Params[0]
で識別できました。 ありがとうございます。

もうひとつすみません、onclick 等のイベントとも識別したいのですが
selectedindex の識別も出来ますでしょうか??
すみませんが、よろしくお願い致します

            

NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2004-10-30 18:33
DropDownListにおいて、サーバ側にポストバックが起きるイベントは
selectedindexChangedだけです。
Clickイベントはそもそもありません。
ので、識別する必要はないかと・・・。
大ベテラン
会議室デビュー日: 2003/09/16
投稿数: 193
お住まい・勤務地: 千葉県
投稿日時: 2004-10-30 18:48
引用:

NAL-6295さんの書き込み (2004-10-30 18:33) より:
DropDownListにおいて、サーバ側にポストバックが起きるイベントは
selectedindexChangedだけです。
Clickイベントはそもそもありません。
ので、識別する必要はないかと・・・。



DropDownListにおいて、request.params(0)にコントロール名が入るですね
それで、他のClickイベント時には、request.params(0)
には何も入ってこないのですね
すみません、ありがとうございます。

ヘルプで探しても request.params があまりよく解らなくて・・
勉強します。 ありがとうございました
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2004-10-30 18:53
DropDownListにおいてというよりかは、AutoPostBack=Trueと指定されたコントロールにおいて、AutoPostBackに該当するイベントが発生した場合Request.Params[0]にコントロール名が入ってくるという認識で良いかもしれません。
大ベテラン
会議室デビュー日: 2003/09/16
投稿数: 193
お住まい・勤務地: 千葉県
投稿日時: 2004-10-30 19:38
引用:

NAL-6295さんの書き込み (2004-10-30 18:53) より:
AutoPostBackに該当するイベントが発生した場合Request.Params[0]にコントロール名が入ってくるという認識で良いかもしれません。


ありがとうございました
お世話になりました
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-11-01 22:53
引用:

七さんの書き込み(2004-10-30 18:48)より:

DropDownListにおいて、request.params(0)にコントロール名が入るですね


 そのような“思いこみ”は、ちょっと危険です。ちゃんとMSDNで確認してください。

引用:

HttpRequest.Params プロパティ

QueryString 、 Form 、 ServerVariables 、 Cookies の各項目が組み合わされたコレクションを取得します。


必ず“0”であるとはいえないように思います(リクエストごとに違うことはないでしょうけど)。都度都度確認するか、名称でアクセスするようにした方が安全でしょう。

_________________
1

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