вызов jquery ajax - любая другая попытка завершается неудачей с xhr.status = 0 - PullRequest
0 голосов
/ 06 мая 2011

Вот мой код:

  $('#select').change(function() {
    $.ajax({
      url: Drupal.settings.basePath + 'custom-ajax/' + $(this).val(),
      dataType: 'html',
      success: function(response) {
        $('#container').html(response);
      },
      error: function(xhr, ajaxOptions, thrownError) {
        alert(xhr.status);
      }   
    }); 
  });

Первое «изменение» моего выбора возвращает «undefined (undefined)» в консоли, второе изменение работает, как и ожидалось ($ ('# container').HTML (ответ);).третье изменение возвращает неопределенное, четвертое изменение возвращает ожидаемое и т. д.

В каждом случае выполняется полный URL-адрес для обратного вызова ajax - если я скопирую и вставлю этот URL-адрес в новое окно браузера, я могунажмите обновить 100 раз, и каждый раз, когда он успешно загружается, так что я не верю, что это как-то связано с тем, что страница не отвечает.Стоит отметить, что при выполнении обратного вызова с ошибкой это происходит сразу после изменения раскрывающегося списка - у меня не создается впечатление, что он даже пытается вызвать указанный URL.

1 Ответ

0 голосов
/ 06 мая 2011

Если он даже не вызывает URL-адрес, как вы предлагаете, он предполагает, что URL-адрес недействителен.Попробуйте увидеть, что это возвращает в нескольких тестовых случаях:

  $('#select').change(function() {
    var url = Drupal.settings.basePath + 'custom-ajax/' + $(this).val();
    alert(url);
    window.location = url;
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...