Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Событие onchange (https://javascript.ru/forum/misc/73692-sobytie-onchange.html)

SashaKostroma 07.05.2018 14:50

Событие onchange
 
Здравствуйте! Помогите пожалуйста. Вот код:

<select id="seltag" onchange="localStorage.seltag=this.selectedIndex">
<option>0</option>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
<script>
//восстанавливаем запомненное значение, если есть
if(localStorage.seltag!==undefined) seltag.selectedIndex = localStorage.seltag;
</script>

Он работает идеально! При перезагрузки страницы выбранный элемент не теряется. Подскажите пожалуйста, как мне это проделать с radio button? При обновлении страницы, сохранить значение в коде:

<div class="data">
<input type="radio" name="data1" class="data2" value="1">1
<input type="radio" name="data1" class="data2" value="2">2
<input type="radio" name="data1" class="data2" value="3">3
<input type="radio" name="data1" class="data2" value="4">4
<input type="radio" name="data1" class="data2" value="5">5
<input type="radio" name="data1" class="data2" value="6">6
</div><br />

Как применить здесь onchange?

Nexus 07.05.2018 14:57

Попробуйте после вашего html вставить это:
<script>
  document.querySelector('[name="data1"]').parentNode.addEventListener('change', function(e) {
      try {
          localStorage.setItem(e.target.name, e.target.value);
      } catch (e) {
          console && console.error && console.error(e);
      }
  });

  try {
      var value = localStorage.getItem('data1');
      if (value)
          document.querySelector('[name="data1"][value="' + value + '"]').checked = true;
  } catch (e) {
      console && console.error && console.error(e);
  }
</script>

SashaKostroma 07.05.2018 15:02

Спасибо ОГРОМНОЕ!!! Всё работает)))


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