Отмена события

Обсуждаются вопросы использования методов и вспомогательных функций, входящие в состав библиотеки jQuery.

Модераторы: TRAHOMOTO, zandroid, tuareg

Отмена события

Сообщение Zhazhah » 30 сен 2011, 22:35

Здравствуйте, есть код при нажатии на ссылку асинхронно отправляется запрос на сервер а ссылке в src подставляется другой адрес.
всё вроде ок, но при переходе по ссылке событие ещё раз обрабатывается и вместо Добавлено в ссылку добавляется Error! и потом уже переход по ссылке.
т.е как удалить событие после первого нажатия?

Код: выделить все
<a class="set-cophinus" href="/" onclick="return false">Добавить</a>


Код: выделить все
$(".set-cophinus").click(function () {
        var th = $(this);
        var name = th.attr("name");
        $.ajax({
            url: 'http://'+location.host+'/Control?id=1',
            dataType:'html',
            type: 'GET',
            timeout: 3000,
            cache: false,
            success: function(response,status) {
                if(status=="success") {
                    var p = response.split(":");
                    if(p[0]=="well") {
                        th.html("Добавлено");
                        th.attr("href", "/cophinus/");
                        th.attr("onclick", "");
                    } else if(p[0]=="err") {
                        th.html("Error!");
                    }
                }
            },
            error: function() {
                th.html("Error!");
            }
        });
    });
Zhazhah
 
Сообщений: 2
Зарегистрирован: 24 сен 2011, 22:56

Re: Отмена события

Сообщение zandroid » 01 окт 2011, 10:05

Воспользуйтесь методом .one(). Только из ссылки уберите onclick="return false;" в пользу вызова e.preventDefault() в обработчике.
Аватар пользователя
zandroid
Модератор
 
Сообщений: 1164
Зарегистрирован: 21 янв 2010, 22:16
Откуда: Нижний Новгород

Re: Отмена события

Сообщение Zhazhah » 01 окт 2011, 23:26

спасибо))
Zhazhah
 
Сообщений: 2
Зарегистрирован: 24 сен 2011, 22:56


Вернуться в API jQuery

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2