ОБНОВЛЕНО: Найден ответ. Не могу представить свой собственный ответ еще 7 часов ... См. Комментарии.Остановить IE от кеширования iframe, открытого через jQuery модальный диалог
Я открываю диалоговое окно следующим образом:
url = 'edit/MyPage.aspx?appid=3&value=4&' + date.getTime();
$('#modalIFrame').attr('src', url);
$('#modalDiv').dialog('open');
Функция Iframe имеет форму с несколькими полями (флажки, выпадающие, прокручиваемыми). В Chrome все работает безупречно. В IE он кэширует очень настойчиво и досадно. Даже shift + refresh не помогает. Поэтому, если я открою диалог, внеся изменения, нажмите «Отправить», а затем обновите страницу, все данные выглядят правильно. Однако, когда я нажимаю кнопку «Редактировать», чтобы открыть диалог, это предыдущие данные (данные вытягиваются с использованием вызова ajax для службы WCF). Я даже ждал пару часов для истечения моего сеанса, не повезло.
Как вы можете видеть выше, я попробовал трюк, который я нашел здесь, чтобы обмануть IE, подумав, что это новая страница. Это не работает. Я также добавил следующий код в Page_Load страницы в IFRAME:
Response.Cache.SetCacheability(HttpCacheability.NoCache)
и следующие мета-тегов в HTML:
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<META HTTP-EQUIV="EXPIRES" CONTENT="0">
Я полностью потерял здесь, какие идеи были бы оценили.
Хорошо, так что я не могу ответить на мой собственный вопрос, но ... –
Хорошо, я обнаружил, что это была служба WCF, которая кэшируются в IE. Кажется странным для меня, но я добавил временную метку для вызова ajax, и теперь это работает! var date = new Date(); данные: {"appid": appid, "serverid": serverid, "timestamp": date.getTime()}, –