Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.10.2012, 17:35
Новичок на форуме
Отправить личное сообщение для vakorol Посмотреть профиль Найти все сообщения от vakorol
 
Регистрация: 30.10.2012
Сообщений: 2

jQuery.ajax() с параметром async=true возвращает ошибку
Доброго всем!
Делаю запрос jQuery.ajax ():
jQuery("#search_form").live("submit", function() {
    search_nr = jQuery("#search_input").val();
    jQuery.ajax({
        url: '/modules/mod_findarticle/process.php',
        data: "search_nr="+search_nr,
        async: true,
        success:  function(data) {
                        alert(data);
                    },
        error: function(jqXHR, textStatus, errorThrown) {
                  alert(jqXHR.status+",  " + jqXHR.statusText+",  "+textStatus+",  "+errorThrown);
        }
    });
});

В ответ всё время получаю alert с сообщением "0, error, error,". Если поставить async=false, то всё работает нормально. Можно всё-таки как-то заставить работать асинхронно?
Ответить с цитированием
  #2 (permalink)  
Старый 30.10.2012, 18:22
Аватар для keen
Профессор
Отправить личное сообщение для keen Посмотреть профиль Найти все сообщения от keen
 
Регистрация: 28.03.2012
Сообщений: 376

хм, вроде всё нормально.
может проблема со стороны сервера?
Ответить с цитированием
  #3 (permalink)  
Старый 30.10.2012, 22:37
Новичок на форуме
Отправить личное сообщение для vakorol Посмотреть профиль Найти все сообщения от vakorol
 
Регистрация: 30.10.2012
Сообщений: 2

Проблема решена!
Всё, разобрался сам! Проблема была в том, что данные отправлялись дважды, т.к. событие submit формы срабатывало два раза (стандартный submit + мой обработчик события jQuery('#search_input').live('submit',...). Всё решилось отключением стандартного поведения при помощи замены function() в .live на function(e) {e.preventDefault; ...}
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск