私は、ajaxとjQueryを使用してhtml要素のインライン編集を行っています。 1つの問題を除いてすべてが正常に動作しています。問題は、ajax呼び出しが2つの異なるjQueryイベントで複製されて実行されていることです。 "変更"と "キーダウン"。ここでポイントコードを教えてください:2つの異なるjqueryイベントの重複したajax呼び出しの問題
$(document).on('change', 'selector', function(){
$.ajax({
// ajax code goes here...
});
})
$('selector').keydown(function(event){
if(event.which == 13)
{
event.preventDefault();
$.ajax({
// ajax code goes here...
});
}
})
「変更」イベントが発生した場合、重複するajax呼び出しの問題は発生しません。これは、 "keydown"イベントが発生した場合にのみ表示されます。テキストボックスで値が変更され、enterキーが押されると、ajaxコードが呼び出され、フィールドが更新されます。しかし、ページのどこかをクリックすると、同じAjax呼び出しが再び実行されます。どうすればこの問題を解決できますか? 2つのコードスニペットに使用
UPDATE
セレクタは同じであり、その<input type="text" />
。
あなたの 'selector'が' input'の場合、それは完全に動作しています – Manoj
はセレクターですクラスはボタンまたはテキストボックスも参照していますか? –
@Manojは入力ボックスです。 – user5307298