Ozk*_*kan 5 c# forms asp.net defaultbutton
在我的网站中,我在母版页中有一个搜索功能(没有设置默认按钮,也没有在窗体中).在一个内容页面,我有一个登录,我使用带有defaultbutton的asp面板.但是当我点击登录文本框中的Enter然后我的网站继续前往搜索事件处理程序......可能是什么原因?
一些代码:
//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>
Run Code Online (Sandbox Code Playgroud)
确定找到了解决方案:需要使用Button而不是LinkButton.那应该没问题......
您只需要在页面加载时设置页面上的默认按钮即可:
您可以使用面板的 FindControl 方法(这是 VB)访问该按钮。
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
Me.Form.DefaultButton = pnl1.FindControl("Button1").UniqueID
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5337 次 |
| 最近记录: |