2011-08-27 17 views
6

我的登录用户控件有两个文本框和一个链接按钮。如何使用LinkBut​​ton进行表单提交?

<asp:TextBox id="tbUserName" runat="server" size="10" /> 
<asp:TextBox id="tbPassword" runat="server" TextMode="Password" size="10" /> 

<asp:LinkButton Text="login" CssClass="submit" runat="server" ID="lbLogin" OnClick="btnLogin_OnClick" /> 

我想称之为“btnLogin_OnClick功能,当有人在推或tbUsername进入tbPassword。

如何做到这一点?

回答

13

这里有一个巧妙的把戏:

<asp:Panel ID="pnlLogon" runat="server" DefaultButton="lbLogin" Width="100%" > 
     <asp:TextBox id="tbUserName" runat="server" size="10" /> 
     <asp:TextBox id="tbPassword" runat="server" TextMode="Password" size="10" /> 
     <asp:LinkButton Text="login" CssClass="submit" runat="server" ID="lbLogin" OnClick="btnLogin_OnClick" /> 
</asp:Panel> 

通过在面板中包装文本框并将面板的DefaultButton设置为您的LinkButton,面板内的文本框中的任何Enter将导致LinkButton单击发生。

+0

谢谢!这适用于IE和Firefox,但不适用于Chrome。有任何想法吗? – Nate

+0

也许是因为这个? http://kpumuk.info/asp-net/using-panel-defaultbutton-property-with-linkbutton-control-in-asp-net/ – Mrchief

+0

辉煌,我不得不按照上面的链接中的说明进行工作苹果浏览器。谢谢。 – Nate

0

//代码隐藏

protected void btnLogin_OnClick(object sender, EventArgs e) 
{ 
    if (Page.IsValid) 
    { 
     // process your form 
    } 
} 
+0

当某人按下tbUserName或tbPassword上的输入时,该函数不会被调用。它只能通过点击呼叫。 – Nate

+0

对不起,Nate,我误解了这个问题。 Mrchief的方法应该工作。 – IrishChieftain