У вас есть несколько вариантов, это все о IE кеширования результата здесь. Вы можете использовать $.ajaxSetup()
, чтобы не кэшировать любые запросы JQuery AJAX, например:
$.ajaxSetup({ cache: false });
Или переключиться на полную $.ajax()
версию .load()
, например:
$.ajax({
cache: false,
url: $link.attr('href'),
dataType: 'html',
success: function(data) {
$dialog.html(data);
}
});
Любой из них добавляет к вашей строке запроса _=XXXXX
, где часть XXXXX
равна Date().getTime();
. Это не позволяет браузеру использовать кэшированный результат, поскольку он думает, что вы запрашиваете новую страницу.
Третий вариант - сделать это самостоятельно, хотя это выглядит как дублирование или работа, например:
var href = $link.attr('href');
$dialog
.load(href + (/\?/.test(href) ? "&" : "?") + "_=" + (new Date()).getTime())
.dialog({
title: $link.attr('title'),
width: 400,
height: 150
});