2011-10-04 142 views
0

我有一個asp.net窗體,有兩個文本框和一個按鈕。我已經實現了在輸入按鍵時觸發按鈕的單擊事件的代碼。keydown事件不在Chrome中工作

<asp:LinkButton ID="statementSearchButton" runat="server" OnClick="GetSearchResults" class="enterButton"> 
</asp:LinkButton> 

$(document).keydown(function (event) { 
     if (event == undefined) { 
      event = window.event; 
     } 
     if (event.keyCode == 13) { 
      $('.enterButton').focus(); 
      $('.enterButton').click(); 
     } 
    }); 

這適用於IE和Firefox,但不適用於Chrome。我使用開發人員工具在Chrome中調試JS,發現如果block被執行但是click事件沒有被解僱,keycode內部的語句== 13。任何想法解決這個問題?

回答

2

它適用於我。

我使用jQuery 1.7.2,和谷歌Chrome 18.0.1025.168(正式版本134367)

$(document).keydown(function (event) { 
    if (event == undefined) { 
     event = window.event; 
    } 
    if (event.keyCode == 13) { 
     alert("keyCode 13"); 
     $('#kplay').focus(); 
     $('#kplay').click(); 
    } 
}); 

$("#kplay").click(function(event) { 
    alert('#kplay clicked'); 
}); 

我還檢查與.kplay代替#kplay,並沒有問題奏效。

$(document).keydown(function(event){ 
    if (event.which == 13) $('.kplay').click(); 
});