Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.02.2020, 15:02
Интересующийся
Отправить личное сообщение для admiral Посмотреть профиль Найти все сообщения от admiral
 
Регистрация: 01.11.2016
Сообщений: 22

Взаимосвязанные Select
Всем привет. Извините за такой детский вопрос, но простого решения в интернете я не смог найти.
Есть два select,

<select class="add_a_car-select select2-hidden-accessible" data-class="stm_select_overflowed" data-selected="" name="stm_f_s[make]" tabindex="-1" aria-hidden="true">
<option value="" selected="selected">Select Make</option>
......
</select>


и

<select class="add_a_car-select select2-hidden-accessible" data-class="stm_select_overflowed" data-selected="" name="stm_f_s[serie]" tabindex="-1" aria-hidden="true">
<option value="" selected="selected">Select Model</option>
.....
</select>


Нужно что бы пока не был сделан выбор в первом, второй select был не активный. Сможет кто помочь? Спасибо за ранее за потраченное на меня время.
Ответить с цитированием
  #2 (permalink)  
Старый 09.02.2020, 15:21
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

admiral,
<!DOCTYPE html>
<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">

  <script>
document.addEventListener( 'DOMContentLoaded' , function() {
 const on = (parent, event, selector, fn) => parent.addEventListener(event, ({target}) => {
     if(target = target.closest(selector)) fn(target)
 });
 const makeSelector = '[name="stm_f_s[make]"]';
 const make = document.querySelector(makeSelector);
 const serie = document.querySelector('[name="stm_f_s[serie]"]');
 const changeEvent = _ => make.selectedIndex ? serie.removeAttribute('disabled') : (serie.setAttribute('disabled', 'disabled'), serie.selectedIndex = 0);
 changeEvent();
 on(document, 'change', makeSelector, changeEvent);
  });
  </script>
</head>
<body>
<select class="add_a_car-select select2-hidden-accessible" data-class="stm_select_overflowed" data-selected="" name="stm_f_s[make]" tabindex="-1" aria-hidden="true">
<option value="" selected="selected">Select Make</option>
<option value="">1</option>
<option value="">2</option>
<option value="">3</option>
<option value="">4</option>
<option value="">5</option>
</select>

<select  class="add_a_car-select select2-hidden-accessible" data-class="stm_select_overflowed" data-selected="" name="stm_f_s[serie]" tabindex="-1" aria-hidden="true">
<option value="" selected="selected" >Select Model</option>
<option value="">1</option>
<option value="">2</option>
<option value="">3</option>
<option value="">4</option>
<option value="">5</option>
</select>


</body>
</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
2 Select зависимы друг от друга u4enik12 Общие вопросы Javascript 8 13.06.2016 10:40
Проблемы с элементами select и input razorg1991 Элементы интерфейса 10 06.01.2016 01:09
Проверка нескольких select на одинаковые значения emulexx Общие вопросы Javascript 6 07.04.2015 15:19
Метод для конвертирования едениц px, em, %, pt. jegit Элементы интерфейса 0 07.03.2013 16:15
Проблема с динамическим формированием select elepsion jQuery 1 31.10.2010 14:31