2010-11-23 12 views
0

キーを押したときにクリックイベントをトリガーするのに問題があります。 以下のコードを使用すると、エンターキーを押すとライブ( 'クリック')イベントが3回トリガされます(つまり、警告メッセージが3回表示されます)。前もって感謝します!! - 韓国JQuery:キー押下時のイベントのトリガー

$('.searchWord').live('keypress', function(e) { 
    if(e.keyCode == 13) { 
$('.bBtnSearchBoard').trigger('click'); 
    } 
}); 

$('.bBtnSearchBoard').live('click', function() { 
alert('a'); 

}); 
+0

@ks公園は、cambracaはあなたが我々が)(event.preventDefaultが必要です同じクラス名 – kobe

答えて

0

からKSは、それはthis testに正常に見えるのKeyDown

$('.searchWord').live('keydown', function(e) { 
    if(e.keyCode == 13) { 
$('.bBtnSearchBoard').trigger('click'); 
    } 
}); 
+0

で複数のdiv要素を持っているかどうかをチェックするために示唆されました。 ここ.... – kobe

+0

迅速な回答ありがとうございます。私は 'keydown'を試みたが、私は同じ結果を得た。 –

+0

@ks Park htmlの中で複数のクラス名をチェックしましたが、 "searchWord"と "bBtnSearchboard"の検索を行いました – kobe

0

を試してみてください。たぶんあなたの問題は、.bBtnSearchBoardが複数の要素を返すということです。

+0

ありがとうcambraca、あなたは正しいです。 –

1

複数の.searchWord要素が互いにネストされているか、複数の.bBtnSearchBoard要素があるようです。

+0

ありがとうbox9、あなたは正しいです。 –

0
$('.searchWord').live('keypress', function(e) { 
    if(e.keyCode == 13) { 
$('.bBtnSearchBoard').click(); 
    } 
}); 

$('.bBtnSearchBoard').live('click', function() { 
    //do your stuff here 
$(this).die("click"); //The first time this method executes unbinds the click handler from matched elements 
return false; //to prevent bubbling up of this event higher up the DOM 
}); 
関連する問題