- - PR -
AutoPostBack後のフォーカス
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-07-22 17:53
…インデックスが変化しているときはいつでもフォーカス移動してしまうような気がしますが… インデックスを選択したときのポストバック時のみフォーカスを移動するようにしないと駄目なんではないでしょうか? ※どうやればいいのかは良く知りません、ごめんなさい。 | ||||
|
投稿日時: 2004-07-22 18:10
まゆりんさん記載の方法でシンプルなロジックが思い浮かばなかったので、
手法はお譲りするとして... ↓先ほどレスのリンクを参考にすると、こういう方法もあります。 Private Sub DropDown_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDown.SelectedIndexChanged 'その他選択時 If Me.DropDown.SelectedItem.Value.Equals("999") Then 'フォーカスセットしたい項目 Me.RegisterStartupScript("setFocus", "<script language=JavaScript>document.userinfo.txtOther.focus();</script>") End If End Sub | ||||
|
投稿日時: 2004-07-22 18:21
ドロップダウンリストで「その他」が選択された場合のみsetFocus()を呼べばよいかと。 1.サーバ側からJavaScriptのコードを吐き出している場合 ドロップダウンリストで選択された値を見て「その他」だった場合のみsetFocus()を呼ぶようにする。 2.クライアント側(HTML)で直接呼び出している場合 サーバ側で判定用の変数を設け、選択した値を見て「その他」だった場合は変数にフラグになるような値を入れ ("1"とか)クライアント側でonloadをつけるか否か判断する。(ちょっと力ずくな方法ですけど・・・) <% If flg = 1 Then %> <body onload="setFocus()"> <% Else %> <body> <% End If %> 私が以前やっていたのはこの2つくらいですね。 _________________ Delphiと切なさと心強さと [ メッセージ編集済み 編集者: まゆりん 編集日時 2004-07-22 18:23 ] | ||||
|
投稿日時: 2004-07-23 00:55
皆さんご返事ありがとうございました。
まゆりんさん、大変丁寧な対応をして頂きありがとございます。 まゆりんさんのやり方でやったら出来ました。 本当にありがとうござました。 |