0

誰かが助けてくれることを願っています。コード ビハインドとして c# を使用して、aspx サイトに取り組んでいます。私は3つの入力ボックスを持っていますが、カーソルが入力ボックスの1つにあるとき、カーソルがsearchBoxにある場合は問題ないsearch_Clickコードを起動するようですが、カーソルがユーザー名とパスワードのテキストボックス。私はこのイベントを起動するJavaScriptを持っていません.何をしたかったのですか? login_Click。それが理にかなっていることを願っています.Response.Redirectを起動する理由を誰もが知っています.javascript/jqueryに電話していません.

//Front end aspx page
<input type="text" class="searchBox" autocomplete="off" id="searchBox" name="searchBox" runat="server" />
<asp:Button ID="searchBtn" class="searchBtn" runat="server" onclick="search_Click" />

<li>
  <asp:Label ID="UserNameLabel"  AssociatedControlID="UserName" runat="server" Text="Username :" CssClass="usernamelabel" />
  <asp:TextBox ID="UserName" runat="server" ValidationGroup="RegisterValidationGroup" CssClass="Username-Password" />                     
</li>
<li>
  <asp:Label ID="PasswordLabel"  AssociatedControlID="Password" runat="server" Text="Password :" CssClass="usernamelabel" />
  <asp:TextBox ID="Password" runat="server" ValidationGroup="RegisterValidationGroup" TextMode="Password" CssClass="Username-Password" />
</li>
<li>
  <asp:Button ID="loginBtn" class="loginBtn" Text="Login" runat="server" onclick="Login_Click" />
</li>



//C# Code behind
protected void search_Click(object sender, EventArgs e)
{
    Response.Redirect("/SearchResults.aspx?q=" + Server.UrlPathEncode(searchBox.Value));
}
4

4 に答える 4

1

あなたが試すことができます

<asp:TextBox ID="TextBox1" runat="server" onkeydown = "return (event.keyCode!=13);" >
</asp:TextBox>
于 2012-06-20T12:34:03.990 に答える
0

デフォルトのフォーム送信動作を望まないテキストボックスをパネルに含めて、そのDefaultButtonプロパティを設定できます。

于 2012-06-20T12:33:15.937 に答える
0

私があなたの質問を誤解していない限り、オブジェクトのDefaultButtonプロパティを使用できますasp:Panel

ログインには...(未テスト)のようなものを使用します

<asp:Panel runat="server" DefaultButton="btnLogin">
  <asp:TextBox runat="server" id="txtUsername" />
  <asp:TextBox runat="server" id="txtPassword" TextMode="Password"/>
  <asp:Button runat="server" id="btnLogin" Text="Login" />
</asp:Panel>

そして、あなたの検索のために...(未テスト)

<asp:Panel runat="server" DefaultButton="btnSearch">
  <asp:TextBox runat="server" id="txtSearch" />
  <asp:Button runat="server" id="btnSearch" />
</asp:Panel>

この背後にある考え方は、フォーカスがasp:TextBox内のにある場合、 asp:PanelEnter キーを押すと が開始されるというものDefaultButtonです。特定のサーバーへのポストバックを発生させたくない場合は、 を更新して、次のDefaultButtonように自動的にキャンセルするようにします...

<asp:Button runat="server" id="btnSearch" OnClientClick="return false;" />
于 2012-06-20T12:43:28.570 に答える
0

パネルを作成し、検索 textBox とボタンをこのパネルに配置して、DefaultButton="searchBtn"を設定できます。このリンクを参照しました: https://stackoverflow.com/a/7836069/1380428

于 2012-06-20T12:43:01.050 に答える