jQuery:附加上一个事件处理程序,已在关闭时删除
我有一个AJAX电话。在此通话过程中,必须禁用该按钮。 然后,在呼叫结束时,必须重新激活按钮的jQuery:附加上一个事件处理程序,已在关闭时删除,jquery,ajax,events,event-handling,Jquery,Ajax,Events,Event Handling,我有一个AJAX电话。在此通话过程中,必须禁用该按钮。 然后,在呼叫结束时,必须重新激活按钮的单击事件 我用这个代码来做。不幸的是,click事件只在第一次起作用 $('#reload_btn').on('click', function(){ $(this).off('click'); $.ajax({ type: 'GET', url: 'ajax/stat.php', data: {use: 'get'},
单击事件
我用这个代码来做。不幸的是,click事件只在第一次起作用
$('#reload_btn').on('click', function(){
$(this).off('click');
$.ajax({
type: 'GET',
url: 'ajax/stat.php',
data: {use: 'get'},
beforeSend: function(){
$('#reload_btn').attr('src', 'files/reload_btn.gif');
},
success: function(result){
$('#ajax').html(result);
},
error: function(data){
$('#ajax').html('Error!');
},
complete: function(){
$('#reload_btn').on('click');
$('#reload_btn').attr('src', 'files/reload_btn.png');
}
});
});
是否有任何方法可以在不调用外部函数的情况下重新附加click
事件?如果更改了两行,则可以重新附加处理程序:存储对函数的引用:
$('#reload_btn').on('click', f = function(){
并将其传递给。单击:
complete: function(){
$('#reload_btn').on('click', f);