JSFiddle - React, Tailwind, and code Playground
HTML
<select name="megaspisok" id="megaspisok">
<option value="megaopt1" id="megaopt1">отобразить spisok и div text</option>
<option value="megaopt2" id="megaopt2">скрыть spisok и div text</option>
</select>
<select name="spisok" id="spisok">
<option value="opt1" id="opt1">Вариант 1</option>
<option value="opt2" id="opt2">Вариант 2</option>
<option value="opt3" id="opt3">Вариант 3</option>
</select>
<div class="text" id="text">
<p id="h1">Заголовок1</p>
<input type="text" name="text1" id="text1" value="1" />
<p id="h2">Заголовок2</p>
<input type="text" name="text2" id="text2"value="2" />
<p id="h3">Заголовок3</p>
<input type="text" name="text3" id="text3" value="3" />
</div>
JavaScript
var spisok = document.querySelector('#spisok'),
megaspisok = document.querySelector('#megaspisok'),
text = document.querySelectorAll('.text input');
function option () {
switch (spisok.value) {
case 'opt1':
text[0].disabled = '';
text[1].disabled = 'disabled';
text[2].disabled = 'disabled';
break;
case 'opt2':
text[0].disabled = 'disabled';
text[1].disabled = '';
text[2].disabled = 'disabled';
break;
case 'opt3':
text.forEach(function (e, i) {e.disabled = '';});
break;
}
}
option();
spisok.addEventListener('change', function () {option();});
megaspisok.addEventListener('change', function () {
switch (megaspisok.value) {
case 'megaopt1':
spisok.disabled = '';
option();
break;
case 'megaopt2':
spisok.disabled = 'disabled';
text.forEach(function (e, i) {e.disabled = 'disabled';});
break;
}
});