window.location.reload ();теряет представление в IE8 - PullRequest
3 голосов
/ 14 февраля 2012

При нажатии кнопки мне нужно убедиться, что управление окном меняется на новый новый элемент (вкладка).Поэтому я использую что-то вроде этого в html:

<input id="back" type="button" value="Back to Form" onclick="backTo();">

и соответствующий код JS: -

function backTo(){
    window.location.href='#fragment-1';
    window.location.reload();
}

При выполнении выше в Firefox управление возвращается к элементу(фрагмент-1) с полями, в которые введены текстовые данные пред.В то же время в IE8 элемент управления возвращается к элементу фрагмента-1, но все введенные ранее текстовые данные потеряны.

Кроме того, я добавил набор параметров Cache-control для public и попытался выяснить, поможет ли этоviewstate для загрузки из кэша всякий раз, когда управление возвращается к данному элементу div /.

Чего не хватает?

Ответы [ 2 ]

0 голосов
/ 14 февраля 2012

как насчет повторной отправки формы вместо перезагрузки:

document.forms[0].submit();//assumed there is only one form in you page

ОБНОВЛЕНИЕ: Это должно сделать это: Предполагая, что div ниже является элементом, которому вы хотите передать элемент управления, используйте функцию scrollIntoView:

<div id="fragment-1" name="fragment-1">
....
</div>

document.getElementById('fragment-1').scrollIntoView();
0 голосов
/ 14 февраля 2012

хорошо .. это зависит от того, как конкретный браузер сохраняет состояние страницы ..
также попробуйте использовать метод history.go () http://www.w3schools.com/jsref/met_his_go.asp и посмотрите, решена ли проблема.

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