IE захватывает кешированный контент - PullRequest
2 голосов
/ 18 мая 2010

Я пытаюсь найти случай, когда IE8 рендерит кэшированные данные. У FF & Chrome нет проблем с тем, чтобы не отставать.

Поток страниц выглядит следующим образом ... выбор в раскрывающемся списке представлен, и серверная часть записывает несколько полей на основе выбора. Тогда происходит другое. Это многоэтапный процесс оформления заказа - первый шаг устанавливает основу ... 2-й шаг устанавливает дополнительные функции, 3-й шаг представляет финал.

Все эти шаги выполняются на одной странице .aspx - jQuery «показывает / скрывает» различные контейнеры в зависимости от текущего шага. Было бы заманчиво искать ошибки в битах на стороне сервера и / или в AJAX, за исключением того факта, что FF и Chrome работают отлично.

Когда пользователи IE проходят через этот процесс оформления заказа во второй раз , данные сохраняются в исходной проверке. (опять же ... отлично для FF и Chrome).

Данные, которые не обновляются, генерируются на стороне сервера:

<div>
    Registering users for: <b>
        <%=Model.Webinar.Title %></b><br />
    <%=Model.Webinar.Presenter.FullName %><br />
    <b>
        <%=Html.DisplayDate(Model.Webinar.Date)%></b> - <i>
            <%=Html.DisplayTime(Model.Webinar.Date, timeZ, false)%>
            -
            <%=Html.DisplayTime(Model.Webinar.Date, Model.Webinar.Duration, timeZ)%><br />
        </i>
</div>

Это не данные форм ... действительно, очень странно, как IE может так энергично кэшировать это. Я попытался добавить скрытое поле getDate () и эффект _some, но не всегда, пуленепробиваемые результаты.

Я видел несколько дискуссий вокруг ссылок на данные IE и AJAX, но это не должно вступать в игру здесь. Есть ли другой метакод для использования?

1 Ответ

2 голосов
/ 20 мая 2010

Я бы установил соответствующие заголовки HTTP, чтобы предотвратить кэширование как на главной странице, так и в ответах AJAX. Попробуйте:

Cache-Control: no-cache
Pragma: no-cache

Кроме того, если это поля формы, которые устарели, это может быть автозаполнение IE, вызывающее проблему. Попробуйте добавить autocomplete = "off" в поля формы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...