【发布时间】:2011-05-23 13:23:38
【问题描述】:
在我的网站中,我在母版页中有一个搜索功能(那里没有设置默认按钮,也没有在表单中)。在内容页面中,我有一个登录名,在那里我使用了一个带有默认按钮的 asp 面板。 但是当我在登录文本框上单击输入时,我的网站会继续进入搜索事件处理程序...... 可能是什么原因?
一些代码:
//on content page
protected void Button1_Click(object sender, EventArgs e)
{
Response.Write(Button1.Text);
}
<asp:Panel ID="pnl1" runat="server" DefaultButton="Button1">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:LinkButton ID="Button1" runat="server" Text="Button1" OnClick="Button1_Click" />
</asp:Panel>
//on master page:
protected void btnSearch_Click(object sender, EventArgs e)
{
if (!txtSearch.Text.Equals(""))
{
Response.Redirect("searchresults.aspx?search=" + txtSearch.Text);
}
}
<div id="searchbar">
<asp:TextBox ID="txtSearch" CssClass="searchbar-field" runat="server"></asp:TextBox>
<asp:Button ID="btnSearch" CssClass="searchbar-btn" runat="server" Text="Zoek" OnClick="btnSearch_Click" />
</div>
OK 找到了解决方案:需要使用Button 而不是LinkButton。那应该就没事了……
【问题讨论】:
-
如果您找到了解决方案,请将其添加为答案并接受它作为解决方案。
-
我不能为我自己的帖子投票... :p 你能为我做些什么..
-
你可以接受你自己的帖子作为解决方案。
标签: c# asp.net forms defaultbutton