【问题标题】:How I use the Enter Key on the Keyboard for my Application我如何为我的应用程序使用键盘上的 Enter 键
【发布时间】:2012-08-05 05:13:40
【问题描述】:

我有一个 ASP.NET 应用程序,用户可以在文本框中输入一个字符串。如果用户点击按钮“发送”,程序会在 Active Directory 中搜索到这个字符串。如果我在键盘上单击 Enter,我希望相同的事件激活“发送”按钮事件。

我这个按钮的cs代码:

 protected void btnBenutzerSuchen_Click(object sender, EventArgs e)
        {
            //.... the code if I click Button "send"

        }

我的 ASPX:

<th><asp:Button ID="Button2" runat="server" Text="Suchen" 
                                onclick="btnBenutzerSuchen_Click" Width="250" /></th>

我能做什么?

塔拉索夫

【问题讨论】:

    标签: c# asp.net events button keyboard


    【解决方案1】:

    Panel 和 HtmlForm 控件上有 DefaultButton 属性,您可以将其设置为您的按钮 ID。

    【讨论】:

      【解决方案2】:

      您可以使用默认按钮来执行上述操作。

      <form runat="server" defaultbutton="myButton">
      ...
      </form>
      

      然后有一个按钮的定义。

      protected void myButton_Click(object sender, EventArgs e)
      {
          Response.Write(myButton.Text);
      }
      

      因此,将其应用于您的代码,您会得到如下结果:

      protected void btnBenutzerSuchen_Click(object sender, EventArgs e)
          {
              //.... the code if I click Button "send"
      
          }
      

      您的 ASPX:

      <th><asp:Panel ID="Panel2" runat="server" defaultbutton="Button2">
      
      <asp:Button ID="Button2" runat="server" Text="Suchen" OnClick="btnBenutzerSuchen_Click" Width="250" />
      
      </asp:Panel></th>
      

      【讨论】:

        【解决方案3】:

        如果您没有任何面板/div,请执行此操作

        页面加载

        if (!Page.IsPostBack) {
        tbx_Find.Attributes.Add("onkeypress", "return clickButton(event,'" + btn_Find.ClientID + "')");
        }
        

        在 Javascript 中

        function clickButton(e, buttonid){ 
        
          var evt = e ? e : window.event;
        
          var bt = document.getElementById("<%=btn_Find.ClientID %>");
        
          if (bt){ 
        
              if (evt.keyCode == 13){ 
        
                    bt.click(); 
        
                    return false; 
        
              } 
        
          } 
        

        }

        【讨论】:

          【解决方案4】:

          你可以试试这个

          Javascript

          <SCRIPT type=text/javascript>
              function doClick(buttonName,e)
              {
                  var key;
          
                   if(window.event)
                        key = window.event.keyCode;     //IE
                   else
                        key = e.which;     //firefox
          
                  if (key == 13)
                  {
                      var btn = document.getElementById(buttonName);
                      if (btn != null)
                      { //If we find the button click it
                          btn.click();
                          event.keyCode = 0
                      }
                  }
             }
          </SCRIPT>
          

          在代码后面

          if (!IsPostBack)
          {
             txtboxFirstName.Attributes.Add("onKeyPress", "doClick('" + btnSearch.ClientID + "',event)");
          
          }
          

          【讨论】:

            猜你喜欢
            • 2012-08-10
            • 2021-09-20
            • 2014-07-31
            • 2010-11-02
            • 1970-01-01
            • 1970-01-01
            • 2011-10-06
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多