Ошибка с получением значения выбора html в переменную js

поэтому я работаю над проектом, и мне нужно использовать значение меню выбора. Однако когда я это делаю, я получаю ошибку TypeError: невозможно прочитать параметры свойства со значением null. Надеюсь, вы, ребята, сможете помочь? Вот мой HTML-код для меню выбора:

<div id="MetalTypeSect">
  <h2><a id="MetalType"></a>Metal Type</h2>
    <select id="select1">
      <option value="blank">--Select--</option>
      <option value="Alum">Alum. 5052</option>
      <option value="GalvL">Galvaneal</option>
      <option value="CRS">CRS</option>
      <option value="SST">SST304</option>
      <option value="GalvZ">Galvanized</option>
    </select>
</div>

и вот мой код js

var metalTypeSelectedValue = document.getElementById("select1");
var metalType = 
metalTypeSelectedValue.options[metalTypeSelectedValue.selectedIndex].value;

while(true) {
  if(metalType == "blank") {
    document.getElementById("AlumThickness").style.visibility="hidden";
  }
}

Ошибка написана в строке 2 кода js. Помощь!

Подождите, пока DOM загрузится, прежде чем обращаться к нему. Кроме того, while(true) создаст бесконечный цикл после решения проблемы DOM.

Sebastian Simon 10.08.2018 16:34

В настоящий момент вы делаете var metalTypeSelectedValue = document.getElementById("select1");, ни один элемент с этим id не существует.

connexo 10.08.2018 16:42
0
3
94
1

Ответы 1

Используйте событие onchange (). Нравится

<select id="select1" onchange="myFunction()">

Затем получите значение в своей функции js

function myFunction() {
    var metalType = document.getElementById("select1").value;

    if(metalType == "blank") {
        document.getElementById("AlumThickness").style.visibility="hidden";
    }
}

Другие вопросы по теме