1

Эта проблема может быть родовым JavaScript/вопрос IFrame, но относится к авторизации SagePay в (низкопрофильный) страницу, которая используетlocation.reload (истина) в SagePay IFRAME перезагружает родителя в IE10/11

setTimeout(function() { location.reload(true); }, 2000); 

чтобы перезагрузить стр. При использовании IE10/11 родитель перезагружается или переходит к URL-адресу iframe.

Это, похоже, не происходит в веб-формах asp.net, где публично размещался сайт с использованием одинакового html, однако это происходит во внутреннем приложении MVC4.

ответ

2

Я не знаю, если это все еще проблема. Но я столкнулся с аналогичным условием, когда вызов location.reload(true) в iframe обновил родительский элемент и загрузил содержимое iframe в браузер.

Я провел несколько исследований, но не смог найти ничего, что могло бы вызвать эту проблему. Я также создал тестовую страницу с iframe, которая перезагружается, но там обновление корректно работало в IE 11. Но для случая, когда IE имеет описанную выше проблему, теперь я использую location.href = location.href.replace(location.hash, '') вместо location.reload(true) в качестве решения.

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

+0

spooky, вы ответили 2 + 1/2 года спустя, и я снова начал работать над этим кодом сегодня утром, и я снова начал смотреть на этот код! Это проблема, которая периодически появляется, поэтому я попытаюсь исправить ее в новом коде –

+0

Привет, @Paul, прошло какое-то время, и мне любопытно, как вы решили решить эту проблему .. любые новости? –