2011-10-03 14 views
66

ContentPageにテキストボックスがあります。ユーザーがそのテキストボックスでEnterを押すと、私はこのContentPageに「Submit」ボタンを発射しようとしています。その特定のボタンのイベントを消したいです。特定のボタンにデフォルトの「入力」を設定する方法

代わりに、マスターページからページ上部に検索テキストボックス&があり、この検索ボタンのイベントが発生します。

マスターページの検索ボタンではなく、このContentPageの送信ボタンを放つように制御するにはどうすればよいですか?

私はコンテンツ管理にEktron CMSを使用しています。

+0

あなたはコンテンツページでのパネルを持っていますか、おそらくあなたはその場合のサブミットとしてデフォルトのボタンを設定することができました – V4Vendetta

+0

ありがとうV4Vendetta、はい、私はパネルを追加し、提出するdefaultbuttonを設定することでこれを解決しました – Ron

答えて

81

最も簡単な方法は、パネルの内側のフィールドとボタンを入れて、あなたがしたいボタンにデフォルトボタンを設定することですenterでアクティブにする。

<asp:Panel ID="p" runat="server" DefaultButton="myButton"> 
    <%-- Text boxes here --%> 
    <asp:Button ID="myButton" runat="server" /> 
</asp:Panel> 
+1

ありがとうKirk、完璧なソリューション - 私のためにうまくいった!! – Ron

+0

このソリューションは、 'れるonkeypress =のようなものとして、JavaScriptに依存ことに注意してください「のjavascript:WebForm_FireDefaultButtonを返します(イベント、' ctl00_MainContentPlaceHolder_btnSave ')」>'あなたのページ –

+0

完璧なソリューションに追加された - のおかげカーク – Sensa

14

DefaultButtonプロパティは、サーバー側のformコントロールまたはPanelコントロールのいずれかで使用できます。あなたのケースでは、グループのコントロール一緒に同じボタンをオフに解雇する必要がありPanelに:

<asp:Panel ID="SearchBox" runat="server" DefaultButton="BtnSearch"> 
    ... 
    <asp:Button ID="BtnSearch" runat="server" Text="Search!" /> 
</asp:Panel> 
.... 
<asp:Panel ID="UserPanel" runat="server" DefaultButton="BtnUserSubmit"> 
    ... 
    <asp:Button ID="BtnUserSubmit" runat="server" Text="Submit" /> 
</asp:Panel> 
+0

ありがとうMellamokb、ASP:Panel worked !!! – Ron

29

あなたは、コードからそれを行う使用する必要がある場合

Me.Form.DefaultButton = Me.btn.UniqueID 

btnがあなたのボタンコントロールである

+0

コントロール内にある場合は、Me.Page.Form.DefaultButtonが機能します。 – NYCdotNet

3

あなたは今、あなたが提出打つときに起動(詳細はドキュメントをチェックアウト)したくないすべてのボタンを無効にするにはUseSubmitBehaviorプロパティを使用することができます

<asp:Button ID="BtnNotToFIre" runat="server" Text="Search" UseSubmitBehavior="false" /> 
+1

絶対スター!これは私が必要なものです! –

+0

そして、ページレイアウトではうまくいかないかもしれない追加のhtml/asp.net要素は必要ありません。 – Walter

関連する問題