2015-12-16 4 views
0

При нажатии клавиши Enter и последующем нажатии на кнопку button необходимо нажать , если нажата клавиша Enter.Check on keycode return undefined

Я не могу проверить keycode, так как keycode всегда undefined.

$('#txtSearch').keyup(function (e) { 
    if (e.keycode != 13) 
     $('#txtId').val(""); 
    else 
     $('#BtnGo').click(); 
}) 
+0

это поможет вам http://stackoverflow.com/questions/302122/jquery-event-keypress-which-key-was-pressed?answertab=acti ve # tab-top –

+0

Вы должны попробовать 'e.which' –

+4

Обратите внимание, что это' keyCode' - чувствительность к регистру. Также вы должны использовать 'e.which' для полной поддержки кросс-браузера:' if ((e.which || e.keyCode)! = 13) ' –

ответ

1

В Firefox свойство keyCode не работает в событии onkeypress (возвращается только 0). Для решения кросс-браузер, использовать какое свойство вместе с KEYCODE, например:

var x = event.which || event.keyCode; // Use either which or keyCode, depending on browser support 

Так что используйте следующий код

$('#txtSearch').keyup(function (event) { 
    var x = event.which || event.keyCode; // Use either which or keyCode, depending on browser support 

     if (x!= 13) 
      $('#txtId').val(""); 
     else 
      $('#BtnGo').click(); 
    }) 

http://www.w3schools.com/jsref/event_key_keycode.asp

1

Лучший способ сделать это

$('#txtSearch').keyup(function (e) { 
    var code = e.keyCode || e.which; 
    if(code != 13) 
     $('#txtId').val(""); 

    else 
     $('#BtnGo').click(); 
})