2011-08-27 13 views
6

私のログインusercontrolには2つのテキストボックスとリンクボタンがあります。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" /> 

私は誰かがtbUsernameまたはtbPasswordに入る押すと」btnLogin_OnClick関数を呼び出すしたいと思います。私はこれを行うにはどうすればよい

答えて

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> 

パネルにテキストボックスをラップし、パネルのDefaultButtonLinkButtonに設定すると、パネル内のテキストボックスに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にenterを押すと、その関数が呼び出されることはありません。それはクリックでのみ呼び出されます。 – Nate

+0

申し訳ありませんネイト、私は質問を誤解しました。 Mrchiefの方法がうまくいくはずです。 – IrishChieftain

関連する問題