2011-07-01 16 views
22
<input type="button" id="save_post" class="button" value="Post" style="cursor:pointer;"/> 

Kişiler klavyesindeki giriş tuşunu sayfadaki bu özel düğmeye nasıl bağlarım? Bir formda değil, ne de olmasını istiyorum.Belirli bir tuşa anahtarı girin sayfa

Teşekkürler!

$(document).keypress(function(e){ 
    if (e.which == 13){ 
     $("#save_post").click(); 
    } 
}); 
+0

Ayrıca bkz http://stackoverflow.com/questions/1402698/binding-arrow-keys-in-js-jquery bugüne kadar sunulan tüm yöntemlerle –

+0

Önemli kusur: Textboxes da yerine izin vermek, girmek üzerinde sunacaktır yeni hatlar için. – Kaji

cevap

33

Bu bakılmaksızın "Enter" nerede butonuna tıklayın edecek sayfada olur

$('body').on('keypress', '#MyInputId', function(args) { 
    if (args.keyCode == 13) { 
     $('#MyButtonId').click(); 
     return false; 
    } 
}); 
10

jQuery kullanarak:

$('body').on('keypress', 'input', function(args) { 
    if (args.keyCode == 13) { 
     $("#save_post").click(); 
     return false; 
    } 
}); 

Veya farklı düğmeler sen seçicileri kullanabilirsiniz özgü girdileri bağlamak

+0

Neden "false 'i döndürmeye ihtiyacımız var? Form gönderilmeyecek. – Mai

+1

Merhaba @Mai, bu soruya özel olarak "Bir formda değil ve ne olmasını isterim" diye sorar. – Parham

7

saf javascript kullanmak istiyorsanız:

document.onkeydown = function (e) { 
    e = e || window.event; 
    switch (e.which || e.keyCode) { 
     case 13 : //Your Code Here (13 is ascii code for 'ENTER') 
      break; 
    } 
} 
+0

Salt JavaScript seçeneği, her zaman bir bonus –

+0

window.onkeydown veya document.onkeydown mı? bu durumda önemli değil sanırım –

İlgili konular