.live
非推奨のものは使用せず、.on
代わりに使用してください。これをしたら
$('input[name="name"] , #save_button').on('keypress click', function() {
// do something
});
次に、ユーザーが入力をクリックすると、ユーザーが をクリックした//do something
場合と同様に処理が行われます#save_button
。また、ユーザーに入力をクリックして使用してもらいたい場合は、入力をクリックしても と同じことを行うべきではありません#save_button
。したがって、これらは 2 つのリスナーに分離する必要があります。
$('input[name="name"]').on('keyup', function(e){
// do something for keyup (use keyup instead, its just better)
});
$('#save_button').on('click', function(){
// do something for click
});
両方のリスナーに同じことをさせたい場合
function doSomething(){
// do something for both
}
$('input[name="name"]').on('keyup', doSomething);
$('#save_button').on('click', doSomething);
リスナーを「ライブ」にする必要がある場合は、ドキュメントから委任します
function doSomething(){
// do something for both
}
$(document).on('keyup', 'input[name="name"]', doSomething);
$(document).on('click', '#save_button', doSomething);
また、すべてのキー押下イベントでアクションを実行するのではなく、一部のキー (ENTER キーなど) のみを実行する必要があると仮定すると、これを確認することをお勧めします。
http://www.cambiaresearch.com/articles/15/javascript-char-codes-key-codes