在ASP.NET中输入键触发错误按钮,怎么办?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (40)

我有一个文本框和许多按钮。当用户在某个文本框中并按下“Enter”键时,就会引发特定的按钮单击事件。我在互联网上读到,“Enter”键有一些问题,我尝试了很少的解决方案,但是它仍然总是进入按钮事件(该按钮是页面中的第一个按钮)。

我试着创建一个什么都不做的按钮,然后在页面上写这个。[医]负载:

idTextBoxFA.Attributes.Add("onkeydown","if(event.which || event.keyCode){if ((event.which == 13) || (event.keyCode == 13)) {document.getElementBtId('" + noEnterButton.UniqueID + "').click();return false;}} else {return true}; ");

我所有的页面控件都在一个表单中,我尝试将表单“defaultButton”属性赋予我创建的按钮。那也没用。

提问于
用户回答回答于

不需要面板。只需使用以下内容:

UseSubmitBehavior="false"
用户回答回答于

ASP的标准方式。NET来控制哪个提交按钮在按Enter时被激活,它是将控件和按钮包装在asp:Panel中,其中DefaultButton属性设置为正确的按钮。

如果我正确地阅读了你的问题,你只想在按下Enter时激活一个特定的按钮,所以将页面上的所有内容都包装在一个asp:面板中。

<asp:Panel id="pnlDefaultButton" runat="server" DefaultButton="btnOK">
    <!-- All controls here including: -->
    <asp:Button id="btnOK" runat="server" Text="OK" />
</asp:Panel>

扫码关注云+社区

领取腾讯云代金券