После выбора option смена значения в стиле
Не могу разобраться что я сделал не так
<select id="effectTypes" onChange="StatusSelect()"> <option disabled selected value> -- select an option -- </option> <option id="model1">1</option> <option id="model1">2</option> <option id="model1">3</option> </select> <div id="openModal1" class="modalDialog"> <div> <h2>Модальное окно1</h2> </div> <div id="openModal2" class="modalDialog"> <div> <h2>Модальное окно2</h2> </div> <div id="openModal3" class="modalDialog"> <div> <h2>Модальное окно3</h2> </div> </div> function StatusSelect(){ var selected = $('#effectTypes').find('option[selected]'); if(selected.attr('id') == 'model1'){ document.getElementById(modalDialog1).style.display = "block"; }; if(selected.attr('id') == 'model2'){ document.getElementById(modalDialog2).style.display = "block"; }; if(selected.attr('id') == 'model3'){ document.getElementById(modalDialog3).style.display = "block"; }; }; |
ch1kag0,
попробуйте без id и jquery сделать. |
function StatusSelect(){ var selected = $('#effectTypes').find('option[selected]'); if(selected.attr('id') == 'model1'){ $("#modalDialog1").show() }; if(selected.attr('id') == 'model2'){ $("#modalDialog2").show() }; if(selected.attr('id') == 'model3'){ $("#modalDialog3").show() }; }; Вы это имели в виду? А как без id пока ничего не придумал |
ch1kag0,
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> .modalDialog{ display: none; } .modalDialog.open{ display: block; } </style> <script> window.addEventListener("DOMContentLoaded", function() { var modalDialog = document.querySelectorAll(".modalDialog"), divOpen; document.querySelector(".effectTypes").addEventListener("change", function() { if(divOpen) divOpen.classList.remove("open"); divOpen = modalDialog[this.value] if(divOpen) divOpen.classList.add("open"); }) }); </script> </head> <body> <select class="effectTypes" > <option disabled selected value> -- select an option -- </option> <option value="0">1</option> <option value="1">2</option> <option value="2">3</option> </select> <div class="modalDialog"> <div> <h2>Модальное окно1</h2> </div> </div> <div class="modalDialog"> <div> <h2>Модальное окно2</h2> </div> </div> <div class="modalDialog"> <div> <h2>Модальное окно3</h2> </div> </div> </body> </html> |
Пойду изучать спецификацию, большое спасибо.
|
Часовой пояс GMT +3, время: 15:07. |