я следующая функция, которая получает больше комментариев за пределами 20, которые показаны по умолчаниюОтключить функцию JQuery после 1 клик, чтобы предотвратить несколько казней
$('.more_comments_link').live('click', function() {
$(".more_comments_link").text("Fetching More Comments ...");
var ajaxOpts = {
type: "get",
url: "ajax_getcomments.php",
dataType: 'json',
data: "&itemid=<? echo $id; ?>&type=1&owner=<? echo $event["data"]["e_creator"]; ?>&more=1",
success: function(data) {
$('.discussion-more').after(data);
$(".discussion-more").hide();
}
};
$.ajax(ajaxOpts);
return false;
});
это работает, единственная проблема в том, что пользователь может нажать кнопку 3 раза очень быстро, и он отправит 3 запроса на ajax_getcomments.php, каждый раз получая одинаковый результат.
я попытался добавить
$(".more_comments_link").unbind('click');
, но ничего не делает.
Первоначальный набор результатов забирается с JQuery и, следовательно, Im используя .live(click'
не уверен, что, если он не имеет ничего общего с тем, почему ее не работает.
Куда вы разместили свое заявление о несвязанности? –
@George независимо, '.unbind ('click')' не будет работать, потому что слушатель был связан с '.live()' not '.click()' или '.bind ('click')'. –