HTTP-запрос JQuery Ajax INTO функция щелчка - не работает - PullRequest
1 голос
/ 15 февраля 2010

Мой вопрос:

Можно ли выполнить Ajax-запрос В функции щелчка, с помощью jQuery? (см. пример ниже), если так, что я делаю не так? Потому что я не могу выполнить какой-либо запрос (я оповещаю данные с помощью функции успеха, и ничего не получается).

Большое спасибо заранее за любую помощь! :)

 function tracker(){

    this.saveEntry = function(elementTracked, elementTrackedType){      
    var mode = "save";
    var dataPost = "mode="+mode+"&elementTracked="+elementTracked+"&elementTrackedType="+elementTrackedType;        
    $.ajax({
        type: "POST",
        url: 'myURL',
        data:dataPost,
        success:function(msg){
            alert(msg);             
        },
        beforeSend:function(msg){
            $("#trackingStatistics").html("Loading...");
        }
    });
    return;
},
    this.stopLinksSaveAndContinue = function(){
    var fileName;
    $("a[rel^='presentation']").click(function(e){      
        fileName = $(this).attr("rel").substring(13);   
        this.saveEntry(fileName,"Presentation");                                        
    })                  
}

}

Ответы [ 3 ]

1 голос
/ 15 февраля 2010

Я предполагаю, что генерируется какая-то ошибка. Попробуйте добавить

  error:function(a,b){
        alert(a);             
    },

После «успеха»

1 голос
/ 15 февраля 2010

Если ваш якорь связан с атрибутом href, это может прервать ваш запрос AJAX. Подобная проблема недавно обсуждалась в следующем сообщении о переполнении стека:

Если вы действительно хотите использовать AJAX для отслеживания ссылок, вы можете сделать следующее:

<a href="#" onclick="tracker('http://www.google.com/'); return false;">Link</a>

Со следующей логикой JavaScript:

function tracker(url) {
    $.ajax({
        type: 'POST',
        url:  'tracker_service.php',
        data: 'some_argument=value',

        success: function(msg) {
            window.location = url;
        }
    });           
}
1 голос
/ 15 февраля 2010

Рассматривали ли вы возможность того, что запрос может быть неудачным. Если это так, вы никогда не будете бить тревогу.

Можете ли вы подтвердить, что вызывается обратный вызов beforeSend?

Кроме того, я предполагаю 'myURL' разве это не в вашем реальном исходном коде?

В }, также может быть что-то не так, что закрывает вашу функцию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...