java script как назначить option атрибут selected нажатием на button

138
06 декабря 2018, 08:50

Суть в том, что у меня есть select с месяцами, где стоит дефолтный текущий месяц, и мне нужно его поменять на другой при нажатии на button добавления задачи.

То есть в select должен отобразиться месяц тот на который добавляю задачу. Как это сделать? Тем более value в option формируется динамически в зависимости от года.

То есть я как то должен выбрать option где value равно переменной в которой будет значение при котором option станет selected - логика мне понятна кажется а как написать не знаю=(

Answer 1

Чтобы изменить value достаточно просто сделать selectEl.value = 'value' Чтобы получить имя выбранного месяца я использовал selectEl.options[selectEl.selectedIndex].text, то есть обратился к массиву options и вытащил по индексу выбранного option(selectedIndex).

const select = document.querySelector('select') 
const button = document.querySelector('button') 
 
button.onclick = () => { 
  select.value = 4 
   
  const name = select.options[select.selectedIndex].text 
   
  console.log(name) 
}
<select> 
  <option value="1"> 
    Январь 
  </option> 
  <option value="2" selected> 
    Февраль 
  </option> 
  <option value="3"> 
    Март 
  </option> 
  <option value="4"> 
    Апрель 
  </option> 
</select> 
 
<button>Изменить месяц</button>

READ ALSO
Как сделать многоуровневый массив?

Как сделать многоуровневый массив?

Нужен массив games, который будет содержать несколько значений: mario, snake

138
Сохранение токена в заголовке

Сохранение токена в заголовке

Всем привет,у меня вот такая проблема,не получается сохранить токен в заголовке Приходится вот так постоянно его задавать,но так не должно...

178