マスターページ構成のWebフォームで既定のボタンを指定する方法
ボタンが複数配置されているWebフォームでは、一番左上のボタンが既定のボタンになるらしく、エンターキーを押すとそのボタンのクリックイベントが発生する。
到達点
指定したボタンを既定のボタンにする
既定の動作
一番上のバナー画像もイメージボタンになっていて、バナーを押すとメインメニューに展開する。このバナーが既定のボタンになっているので、検索キーを入力してエンターを押すと、メインメニューに展開してしまう。
作業
既定にしたいボタンのIDをHTMLソースから控える。ボタンIDは「"ctl00$MainContent$ButtonTVSearch」。
Webフォームが展開されるマスターページの「ContentPlaceHolder」のFormのIDを調べる。FormのIDはForm1である。
Page_Loadイベントで既定のボタンを指定する。
Sample
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
Dim form As HtmlForm = Master.FindControl("form1")
form.DefaultButton = "ctl00$MainContent$ButtonTVSearch"
End Sub
Dim form As HtmlForm = Master.FindControl("form1")
form.DefaultButton = "ctl00$MainContent$ButtonTVSearch"
End Sub
すると下図のようにJavascriptが生成され既定のボタンが設定されていることを確認できる。
これで検索ボタンが既定のボタンになる。
コメント
コメントを投稿