2012-07-30 37 views
1

我的問題是有關處理Enter鍵press.I已經被稱爲「order.aspx」,這是位於主page.Here裏面我正在說明控制結構的<input>領域內響應的「輸入」按鍵

一頁
1. <asp:TextBox ID="txtSearch" MaxLength="50" runat="server" Width="420px" CssClass="txtbox"></asp:TextBox> 

2. <asp:Button ID="btnSearch" runat="server" OnClick="btnSearch_Click" /> 

3. one asp grid control with one column containing textbox for entering order quantity 

4. <asp:Button ID="btnOrder" runat="server" OnClick="btnOrder_Click" />. 

我的要求是,

  1. ,而用戶在搜索文本框,然後按回車文字輸入鍵,然後btnSearch_Click應該解僱
  2. ,而用戶在網格中的文本框,然後按回車量輸入鍵,然後BTN Order_Click應該會觸發。

我用不同的代碼嘗試最終得到的答案,但它不完全functional.Follwing是我已經使用的JavaScript代碼。

function DoEnterKeyButtonClick(buttonId) { 
    e = event; 
    var code = (e.keyCode ? e.keyCode : e.which); 
    if (code == 13) { 
     document.getElementById('ctl00_CphMaster_' + buttonId).click(); 
     return false; 
    } 
} 

我呼籲txtSearch的按鍵和網格文本框這個方法並傳遞按鈕的ID火災事件btnSearch和btnOrder respectively.When我正在進入搜索文本框中的文本並點擊回車鍵然後btnSearch_Click是射擊,當我輸入訂單數量和擊中回車鍵btnOrder_Click射擊。但問題是,更改頁面索引後說第二頁所需的功能不起作用。那就是當我輸入訂單數量和擊中輸入鍵,然後btnSearch_Click會火,再btnOrder_Click firing.This將清除量進入並導致error.Please幫我...

臨屋NKS, JOBY

回答

5

而不是給這個document.getElementById('ctl00_CphMaster_' + btnSearch).click();

試試這個document.getElementById('<%= btnSearch.ClientID %>').click();

,或者嘗試使用jQuery

$("#txtSearch").keyup(function(event){ 
    if(event.keyCode == 13){ 
     $("#btnSearch").click(); 
    } 
}); 

否則把你的控件在asp裏面:面板和設置DefaultButton屬性爲btnSearch,如下所示

<asp:Panel ID="Panel1" runat="server" DefaultButton="btnSearch"> 
    <asp:TextBox ID="txtSearch" MaxLength="50" runat="server" Width="420px" CssClass="txtbox"></asp:TextBox> 
    <asp:Button ID="btnSearch" runat="server" OnClick="btnSearch_Click" /> 
    </asp:Panel> 

希望這會有所幫助。

非常感謝 安娜

+0

太謝謝你了....它的工作... – 2012-07-30 06:12:55

1

你的函數不知道究竟這甚至是。 嘗試像這樣

function DoEnterKeyButtonClick(event,buttonId){} 
1

我一直圍繞以下得心應手片斷..

function getIntKey(key) { 
    var keycode; 
    if (key == null) { keycode = event.keyCode; } else { keycode = key.keyCode; } 
    return keycode; 
} 

和使用它,這樣的..

$("#txtSearch").keyup(function(e){ 
    if(getIntKey(e) == 13){ 
    //Enter was pressed, do somthing 
    } 
});