2011-04-18 107 views
2

我有一個.aspx頁面,其中包含兩個按鈕之一是「btnCancel」,另一個是「btnSave」。默認按鈕設置

<asp:Button ID="btnCancel" runat="server" Text="Cancel" CssClass="Button" OnClick="btnCancel_Click" /> 
<asp:Button ID="btnSave" runat="server" Text="Save" CssClass="Button" OnClick="btnSave_Click" 
OnClientClick="tinyMCE.triggerSave(false,true);" ValidationGroup="grp"/> 

現在的問題是填補了其中一些存在於該網頁,文本框後,如果我按「回車鍵」中的「btnCancel_Click」事件,而不是射擊「btnSave_Click」的。

任何人都可以請建議我如何設置「btnSave_Click」按鈕作爲默認值。因此,如果有人按下「輸入按鈕」,它將觸發「btnSave_Click」事件。

請任何幫助。

更新後的問題:

<asp:Panel DefaultButton="btnSave" runat="server" ID="pnlTest"> 
    <asp:Button ID="btnCancel" runat="server" Text="Cancel" CssClass="Button" OnClick="btnCancel_Click" /> 
    <asp:Button ID="btnSave" runat="server" Text="Save" CssClass="Button" OnClick="btnSave_Click" 
              OnClientClick="tinyMCE.triggerSave(false,true);" ValidationGroup="grp" /> 
    </asp:Panel> 
+0

我用下面給出的代碼: this.Form.DefaultButton = btnSave.UniqueID ; 它工作正常。所以,它可以是一個替代答案。 – 2011-04-18 12:27:39

回答

2

把你的表單控件asp.net面板內,並設置DefaultButton到您的按鈕ID 例子:

<asp:Panel DefaultButton="btnSave">  
<asp:Button ID="btnCancel" runat="server" Text="Cancel" CssClass="Button" OnClick="btnCancel_Click" /> 
<asp:Button ID="btnSave" runat="server" Text="Save" CssClass="Button" OnClick="btnSave_Click"OnClientClick="tinyMCE.triggerSave(false,true);" ValidationGroup="grp"/> 
</asp:Panel> 
+0

這不起作用。我可以在我的DIV中使用相同的東西嗎? – 2011-04-18 07:46:00

+0

您是否在同一面板中添加了所有其他控件,如文本框和標籤?如果您的所有控件都位於面板中而不僅僅是按鈕,它應該可以工作。嘗試它,並將我喂回 – 2011-04-18 07:52:58

+0

是的,它現在工作正常。非常感謝您的時間和支持。 – 2011-04-18 08:00:53

6

坐落在含paneldefaultbutton屬性:

<asp:panel defaultbutton=「btnSave」> 

this blogpost服用。

+0

此頁面不包含任何面板,它會繼承母版頁。 – 2011-04-18 07:30:30

+0

然後按照Pr0fess0rX的建議將兩個按鈕添加到面板。 – Mizipzor 2011-04-18 07:44:49

+0

@mizipzor這是行不通的。存在同樣的問題。 – 2011-04-18 07:47:16

0

我們可以設置「defaultbutton」屬性的表單標籤

+0

感謝您的幫助。 – 2011-04-18 08:03:56

1

,你可以簡單地使用JavaScript的

<script language="javascript" type="text/javascript" > 
function button_click(objTextBox,objBtnID) 
{ 
    if(window.event.keyCode == 13) 
    { 
     document.getElementById(objBtnID).focus(); 
     document.getElementById(objBtnID).click(); 
    } 
} 
</script> 

在你的頁面加載事件添加此

this.TextBox1.Attributes.Add("onkeypress", "button_click(this,'" + this.btnSave.ClientID + "')"); 
+0

非常感謝,我會牢記它,這在其他一些情況下會有所幫助。 – 2011-04-18 08:03:24

0

集此JavaScript到頭

function checkKey(b1, e) { 
if (e.keyCode == 13) { 
    //alert(e.keyCode + 'validation.js'); 
    document.getElementById(b1).click(); 
    return false; 
} 

}

和組屬性來控制

txtboxname.Attributes.Add("onkeypress", "javascript:return checkKey('" + buttonName.ClientID + "',event);"); 
相關問題