[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Добавление, удаление событий
forza
Доброе время суток.
Опишу свою проблему: Есть кнопка, при нажатии которой отравляется AJAX запрос. Мне нужно отключить эту кнопку пока идет запрос. Функция .bind() мне поможет это сделать. Все бы ничего, после того как пришел запрос с сервера, нужно убрать запрет на клики. Каким образом?
Вот пример кода
$.ajax({
type:ajaxOpts.type,
url:ajaxOpts.url,
beforeSend:beforeSending,
complete:completeSending,
success : updatePageClass,
data:qs,
dataType : "JSON",
error:function (xhr, ajaxOptions, thrownError, request, error)
{
alert('xrs.status = ' + xhr.status + '\n' +
'thrown error = ' + thrownError + '\n' +
'xhr.statusText = ' + xhr.statusText + '\n' +
'request = ' + request + '\n' +
'error = ' + error);
}
}
);

function beforeSending()
{
star.unbind('click');
$('.loading').show();
}
function completeSending()
{
//Resotre all events
?????
$('.loading').hide();
}


Дело в том, что ямог бы просто сделать
star.bind('click', function(){ // DO SOME COOL STUFF });

Но это не подойдет, потомучто сценарии этой кнопки подвязаны к плагину.

Ребят, выручайте, уже 2 часа ломаю голову



Спустя 2 часа, 32 минуты, 9 секунд (13.09.2011 - 20:02) forza написал(а):
Сложный вопрос? за спасибо никто не подскажет :Д ?

Спустя 2 часа, 25 минут, 32 секунды (13.09.2011 - 22:28) moskitos80 написал(а):
Ну, если в переменной star содержится ссылка на элемент input - возможен такой вариант:

function beforeSending()
{
star.attr("disabled",true);
$('.loading').show();
}
function completeSending()
{
star.attr("disabled",false);
$('.loading').hide();
}

Спустя 3 минуты, 37 секунд (13.09.2011 - 22:32) Evilsoul написал(а):
moskitos80
star.attr("disabled",true);

имхо, на сколько я знаю то второй параметр attr это значение.
star.attr("disabled", "disabled");

а на разблокировку так
star.removeAttr("disabled");

Спустя 1 час, 19 минут, 17 секунд (13.09.2011 - 23:51) moskitos80 написал(а):
Цитата (Evilsoul @ 13.09.2011 - 19:32)
moskitos80
star.attr("disabled",true);

имхо, на сколько я знаю то второй параметр attr это значение.
star.attr("disabled", "disabled");

а на разблокировку так
star.removeAttr("disabled");

Да правильно. Именно так.

Спустя 9 часов, 13 минут, 22 секунды (14.09.2011 - 09:04) forza написал(а):
Еслиб у меня был инпут, я бы не писал сюда smile.gif У меня объект <li>

Спустя 59 минут, 25 секунд (14.09.2011 - 10:04) Michael написал(а):
Не понятно зачем снимать/выставлять обработчик если в нем самом можно флаг установить/проверить разрешенности выполнить действие. Через глобальную переменную или метод data в jquery - более симпотно.

Спустя 4 часа, 25 секунд (14.09.2011 - 14:04) forza написал(а):
Понятно, что то похожее я реализовал.. просто думал что можно это было элегантней реализовать


_____________
Заработок для веб-разработчиков: CodeCanyon
Мое Портфолио
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.