Отменить запрос с помощью jquery.Ajax () - PullRequest
0 голосов
/ 09 октября 2011

Я сейчас настраиваю страницу проектов с серией ссылок на изображения проектов, в данный момент эти изображения загружаются с использованием jquery load.Однако, если я щелкаю ссылку, затем нажимаю другую ссылку в быстрой последовательности, кажется, что она загружает изображения из первой ссылки, а не отменяет этот запрос и загружает вторую ссылку

Я понял из того, что я читал, чтолучший способ использования - обменять загрузку jquery на jquery Ajax, единственная проблема в том, что я не совсем понимаю, как этого добиться с помощью jquery ajax, я был бы признателен, если бы кто-то мог дать мне отправную точку

Спасибо

Ответы [ 2 ]

1 голос
/ 09 октября 2011

Возможно, вы захотите прочесть: Прервать Ajax-запросы, используя jQuery Они объясняют именно это. По какой-то причине StackOverflow хочет преобразовать это в комментарий, а не в ответ, поэтому я добавил это предложение.

0 голосов
/ 09 октября 2011

Полагаю, прямо сейчас вы звоните примерно так:

$('#mydiv').load('projects.php?page=1');

Точный эквивалент с использованием ajax () будет:

$.ajax('projects.php?page=1', {
  success: function(html) {
    $('#mydiv').html(html);
  }
});

Я предполагаю, что люди сказали вам, что вы хотите прервать старый запрос и начать новый? Вы можете сделать это, сохранив объект jqXHR, возвращенный ajax () и используя его позже:

var jqXHR = $.ajax('first url', ...);

// Later
jqXHR.abort();
var jqXHR = $.ajax('second url', ...);

Надеюсь, этого достаточно, чтобы вы начали, дайте мне знать, если у вас есть вопросы.

...