ASP.NETでJavaScriptコントロールのフォーカスを実現します.
2445 ワード
Windowsアプリケーションではコントロールのフォーカスをコントロールしやすいですが、ASP.NETではこのような機能は提供されていません.しかし、JaveScriptを通じてページ上の特定のコントロールに焦点を合わせる機能を実現することができます.
以下はJavaScriptコードです.
1 <script language="javascript">
2 var control = document.getElementById(<control name>);
3 if( control != null ){ control.focus(); }
4 </script>
ここでは上のJavaScriptコードをパッケージ化するSetFocus Control関数を書いています.ページに登録して使うのはPage.Register Startup Script方法です.
1 Public Sub SetFocusControl()Sub SetFocusControl(ByVal ControlName As String)
2 ' character 34 = "
3 ' chr(34)
4 Dim script As String = _
5 "<script language=" + Chr(34) + "javascript" + Chr(34) _
6 + ">" + _
7 " var control = document.getElementById(" + Chr(34) + _
8 ControlName + Chr(34) + ");" + _
9 " if( control != null ){control.focus();}" + _
10 "</script>"
11 Page.RegisterStartupScript("Focus", script)
12 End Sub
その中のControl NameはフォーカスコントロールのIDを取得します.