方法一
假設:
<asp:TextBox id="tbInput" runat="server" Width="240px"></asp:TextBox>
<asp:Button id="btnOK" runat="server" BorderWidth="1px" BorderColor="Purple" BorderStyle="Solid" Text="Search Site"></asp:Button>
解決方案:
在.aspx頁面中添加:
<SCRIPT LANGUAGE="javascript">
function SubmitKeyClick(button)
{
if (event.keyCode == 13)
{
event.keyCode=9;
event.returnValue = false;
document.all[button].click();
}
}
// -->
</SCRIPT>
在Page_Load事件中添加:
tbInput.Attributes.Add("onkeydown","SubmitKeyClick('btnOK');");
s
但我加到我代碼中,發現並沒有實現我的功能,那是為什麼呢?原因就在於我使用了模板頁Master,那麼頁面在被翻譯成用戶端的HTML代碼之後我的Button名字改變了,由bt_search變成了ctl00$ContentPlaceHolder1$bt_search所以這時候只有在後台代碼修改為tbInput.Attributes.Add("onkeydown","SubmitKeyClick('ctl00$ContentPlaceHolder1$bt_search');");這樣代碼就會正常工作了。
方法二
利用<asp:Panel>分離button
<asp:ImageButton ID="GetBackPwd" runat="server" SkinID="GetBackPwd" onlick="getpwd" />
<asp:Panel ID="panLogin" runat="server" DefaultButton="Login">
<asp:TextBox ID="txbUserName" runat="server" ></asp:TextBox>
<asp:TextBox ID="txbPwd" runat="server" TextMode="Password"></asp:TextBox>
<asp:ImageButton ID="Login" runat="server" SkinID="login" OnClick="Login_Click" />
<asp:ImageButton ID="Register" runat="server" SkinID="Register" onclick="reg">
</asp:Panel>
這樣斷行符號只會激發Login_Click事件
因為pane 的DefaultButton="Login"