特定のテキストフィールドでEnterキーが押されたとき特定のボタンをクリックさせる - ASP.NET

方法としては2通りあり、Javascriptで実装する方法と、PanelコントロールのDefaultButtonを使用する方法があります。

Javascriptでの実装

JavaScriptの関数として下記を定義します。
<script type="text/javascript">
  function OnClick(ControlName) {    
      var key;
       if(window.event)
            key = window.event.keyCode;  
      if (key == 13) {
          var btn = document.getElementById(ControlName);
          if (ControlName!= null) { 
              ControlName.click();
              event.keyCode = 0
          }
      }
  }
  </script> 
クリックさせたいテキストボックスコントロールに、onKeyPressイベントを追記します。
<asp:TextBox ID="txtbox" runat="server" onKeyPress="OnClick("ボタンのID")">

PanelコントロールのDefaultButtonを使用する方法

TextBox, FileUpload等の特定のボタンを押させたいコントロールをPanel内部に配置し、PanelのDefaultButtonプロパティにクリックさせたいボタン名を設定します。

JavaScriptの実装は手間がかかるため、Panelコントロールを用いたほうが楽そうです。
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
最終更新日: 2024-01-06
作成日: 2009-11-15
iPentec all rights reserverd.