IE8 кеш ajaxSubmit - PullRequest
       7

IE8 кеш ajaxSubmit

0 голосов
/ 01 декабря 2009

Я использую следующую функцию для загрузки / отображения изображения

Цель - это div, в котором я обновляю содержимое, возвращаемое из функции формы. Я хотел AJAX, поэтому мне не нужно перезагружать всю страницу только для того, чтобы загрузить и увидеть предварительный просмотр изображения.

Я загружаю изображение, отображаю его в окне предварительного просмотра, обрезаю его и выполняю другую функцию, которая отображает его в новой цели (не показана),

Проблема заключается в том, что в IE 8 все кэшированные вызовы Ajax кешируются, хотя я не настраиваю его, единственный способ показать его - это жесткое обновление Есть ли способ заставить его не кэшировать? Конечно, это прекрасно работает во всех других браузерах.

$("#profile-photo").submit(function() {
         var myOptions = {
                        target: '#preview-target',
            beforeSubmit:  showRequest,
                        success: showResponse,
                        clearForm: true,
                        resetForm:true,
                        cache:false

                 };
        $(this).ajaxSubmit(myOptions);
            return false;
        });

Ответы [ 2 ]

2 голосов
/ 01 декабря 2009

Я сомневаюсь, что это кэширует отправку, скорее всего, это кэширование URL изображения. В своем ответе вы просто отправляете URL для нового изображения? Если это так, попробуйте добавить строку запроса:

<img src="/my/path/to/my/image.jpg?q=12345" />

Это должно заставить все браузеры перезагружать изображение с сервера.

1 голос
/ 01 декабря 2009

Если это касается запроса GET, то это правда. Если у вас нет возможности изменить его на POST, то лучший способ - динамически добавлять дополнительный параметр запроса с меткой времени к URL-адресу при каждом запросе. В Javascript вы можете использовать new Date().getTime() для этого.

...