【问题标题】:How to stop onclick event of master page on conent page textbox enter click如何在内容页面文本框中停止母版页的onclick事件输入点击
【发布时间】:2011-06-16 20:11:23
【问题描述】:

我有两个搜索选项:

  1. 在母版页上有一个用于搜索的文本框和按钮。
  2. 在内容页面上有一个用于搜索的文本框和按钮。

现在,每当我从键盘按 Enter 键时,都会触发母版页按钮事件。我的意思是在每种情况下,当我从键盘按 Enter 键时,都会调用母版页搜索按钮单击事件。我想要如果有人填写内容页面搜索表单并按 Enter 键,它会触发内容页面事件。谁能帮我解决这个问题?

作者从答案编辑

我有 2 个搜索控件:一个在母版页中,我在每个页面上都显示,一个在内容页面中,这是我的搜索页面,它显示搜索结果。我在母版页按钮单击中编写了代码,该按钮将重定向到显示搜索结果的内容页面。

  1. 在主页上,我在母版页搜索文本框中键入一些文本,然后从键盘按 Enter。根据编码,它重定向到我的搜索结果页面,即内容页面。

  2. 现在我在我的搜索结果页面(内容页面)中输入一些文本,然后从键盘按 Enter 直到此步骤正常工作。

  3. 现在,当再次在母版页搜索文本框中键入一些文本并从键盘按 Enter 而不是采用母版页搜索按钮的 onclick 时,它会触发搜索结果按钮的 onclick这是内容页面

【问题讨论】:

    标签: c#


    【解决方案1】:

    使用 Panel 控件包装每个搜索文本框和按钮,并将其 DefaultButton 属性设置为搜索按钮的 ID,如下所示:

    <asp:Panel id="pnlSearch" DefaultButton="btnSearch" runat="server">
      <asp:TextBox id="txtSearchString" runat="server" />
      <asp:Button id="btnSearch" Text="Search" runat="server" />
    </asp:Panel>
    

    http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.panel.defaultbutton.aspx

    【讨论】:

    • 我将母版页文本框和搜索按钮放在一个面板中,并将其命名为 pnlsearch,并将内容页面文本框和搜索放在一个面板中,并将其命名为 pnlcontentsearch。现在,当我单击母版页文本框时,它需要母版页按钮单击事件。单击母版页按钮时,我将重定向到内容页搜索页面,现在我在内容页文本框中键入不同的文本,然后从键盘按 Enter,然后它也可以工作,但是现在我再次更改母版页文本框的值并现在按 Enter 键它需要内容页面搜索面板按钮单击。
    • 您能详细说明一下吗?我不明白你的问题。
    • 当您调试代码并在两个搜索按钮的搜索按钮单击事件处理程序上设置断点时,事件是否会正确触发?
    • 我错误地将我的帖子写为答案 2 请检查
    • @marzouka - 这种方法在 .NET 4.0 中是否可以跨浏览器工作?使用 LinkBut​​ton 时,该方法无法跨浏览器工作,而且我过去曾遇到过 Chrome 无法正确处理默认按钮的问题。
    【解决方案2】:

    请参阅我在母版页中有 2 个搜索控件,一个在每个页面上显示,一个在内容页面中,这是我的搜索页面,显示搜索结果。我在母版页按钮单击中编写了代码,该按钮将重定向到显示搜索结果的内容页面。现在我正在遵循的步骤是从主页我在母版页搜索文本框中输入一些文本并从键盘按 Enter。根据编码,它重定向到我的搜索结果页面,即内容页面。步骤 -2 现在我在我的搜索结果页面(内容页面)中输入一些文本,然后从键盘按 Enter,直到此步骤工作正常。步骤 - 3 现在,当再次在母版页搜索文本框中键入一些文本并从键盘按 Enter 而不是点击母版页搜索按钮时,它会触发搜索结果按钮的 onclick,这是内容页

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-21
      • 2011-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多