如何在某个按钮上设置默认的"输入"

Ron*_*Ron 76 asp.net master-pages

ContentPage上有一个文本框.当用户在该文本框中按Enter键时,我试图在此ContentPage上触发"提交"按钮.我想点开那个特定按钮的事件.

相反,在MasterPage页面顶部有一个搜索文本框和按钮,此搜索按钮的事件将触发.

如何控制以触发此ContentPage的提交按钮,而不是MasterPage的搜索按钮?

我正在使用Ektron CMS进行内容管理.

Kir*_*irk 94

最简单的方法是将字段和按钮放在Panel中,并将默认按钮设置为要在输入时激活的按钮.

<asp:Panel ID="p" runat="server" DefaultButton="myButton">
  <%-- Text boxes here --%>
  <asp:Button ID="myButton" runat="server" />
</asp:Panel>
Run Code Online (Sandbox Code Playgroud)

  • 谢谢柯克,完美的解决方案 - 对我来说效果很好!! (2认同)

小智 33

如果您需要从代码中执行此操作,请使用

Me.Form.DefaultButton = Me.btn.UniqueID
Run Code Online (Sandbox Code Playgroud)

btn你的按钮控制在哪里.


mel*_*okb 15

您可以DefaultButton在服务器端form控件或Panel控件上使用该属性.在您的情况下,将控件组合在一起Panel应该触发相同的按钮:

<asp:Panel ID="SearchBox" runat="server" DefaultButton="BtnSearch">
    ...
    <asp:Button ID="BtnSearch" runat="server" Text="Search!" />
</asp:Panel>
....
<asp:Panel ID="UserPanel" runat="server" DefaultButton="BtnUserSubmit">
    ...
    <asp:Button ID="BtnUserSubmit" runat="server" Text="Submit" />
</asp:Panel>
Run Code Online (Sandbox Code Playgroud)


adi*_*nas 5

您现在可以使用UseSubmitBehavior属性来禁用在提交提交时不想触发的所有按钮(有关详细信息,请查看文档)

    <asp:Button ID="BtnNotToFIre" runat="server" Text="Search" UseSubmitBehavior="false" />
Run Code Online (Sandbox Code Playgroud)

  • 绝对明星!这就是我需要的! (2认同)