2011-09-15 5 views
1

Я работаю в mvc3 и сделал это, чтобы изменить язык по URL-адресу адрес (он отлично работает):Как сохранить выбранное поле в combobox после обновления страницы?

var urlString = window.location.host; //the url with localhost:XXX only -and if it changes it will adjust itself 

var Lang = $(this)[0].value;   //en or fr 
window.location = "http://" + urlString + "/" + Lang; 

, но теперь у меня есть серьезная проблема: window.location - обновляет страницу, и $ (this) [0] .value - возвращается как начало. например, если я изменил значение со списком с «английский» на «французский», язык изменится на французский (coz url is not refreshed), но в поле со списком выбранное поле снова «английское», и я не могу его изменить, потому что все страница обновляется. так ... кто-нибудь может сказать мне, что делать?

заблаговременно.

ответ

1

В вашем контроллере я предполагаю, что вы передаете язык в качестве параметра, установите выбранное значение выпадающего списка на язык, переданный таким образом, чтобы при загрузке страницы задано значение и выбран правильный элемент ,

0

Если это обновление, это полная перезагрузка страницы, поэтому вам нужно сохранить состояние. Либо расследуйте локальное хранилище html 5 (ограниченная поддержка браузера) http://www.w3schools.com/html5/html5_webstorage.asp

или когда его выбрано сохраните его в файле cookie предпочтений в javascript. Код уже в основном написан для вас здесь - вам просто нужно прочитать его на загрузке страницы и сохранить его, когда изменяется поле со списком.

Javascript remember combobox value

Смежные вопросы