Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Сохранение select в Cookies и дальнейшее использование (https://javascript.ru/forum/dom-window/68320-sokhranenie-select-v-cookies-i-dalnejjshee-ispolzovanie.html)

seotapki 08.04.2017 19:12

Сохранение select в Cookies и дальнейшее использование
 
Всем привет!

Имеется следующий скрипт:
<select name="choose" id="choose" class="input-select">
				  <option value="nul" selected disabled>Выберите ваш город:</option>
				  <option value="opt1">Владивосток</option>
				  <option value="opt2">Уссурийск</option>
</select></div>
				
<section class="jqueryOptions default"></section>
<section class="jqueryOptions opt1"></section>
<section class="jqueryOptions opt2"></section>  

<script>
	$(function() {
	  $('.jqueryOptions').hide();
	  $('.opt1').show();
	  $('#choose').change(function () {
		$('.jqueryOptions').slideUp();
		$('.jqueryOptions').removeClass('current-opt');
		$("." + $(this).val()).slideDown();
		$("." + $(this).val()).addClass('current-opt');
	  });
	});
</script>


Подскажите, как сделать так, чтобы выбранное значение опции сохранялось в cookie и при переходе на следующую страницу (или обновлении), значение бралось из Cookie, а если пользователь выбрал другое значение select, Cookie перезаписалась и использовалось новое значение???

рони 08.04.2017 19:25

seotapki,
$(function() {
    var abracadabra =  window.localStorage.getItem('abracadabra')||'opt1';
    $('.jqueryOptions').hide();
    $('.'+abracadabra).show();
    $('#choose').change(function () {
    window.localStorage.setItem('abracadabra', this.value);
    $('.jqueryOptions').slideUp();
    $('.jqueryOptions').removeClass('current-opt');
    $("." + $(this).val()).slideDown();
    $("." + $(this).val()).addClass('current-opt');
    });
  });

seotapki 08.04.2017 19:36

Цитата:

Сообщение от рони (Сообщение 449608)
seotapki,
$(function() {
    var abracadabra =  window.localStorage.getItem('abracadabra')||'opt1';
    $('.jqueryOptions').hide();
    $('.'+abracadabra).show();
    $('#choose').change(function () {
    window.localStorage.setItem('abracadabra', this.value);
    $('.jqueryOptions').slideUp();
    $('.jqueryOptions').removeClass('current-opt');
    $("." + $(this).val()).slideDown();
    $("." + $(this).val()).addClass('current-opt');
    });
  });

Работает, спасибо, а можно как-то сделать, чтобы в селекте тоже оставалось выбранное значение?

рони 08.04.2017 19:39

seotapki,
строка 11
}).val(abracadabra);

seotapki 08.04.2017 19:45

Спасибо большое)))


Часовой пояс GMT +3, время: 19:06.