Как отображать и скрывать элементы div на основе раскрывающегося списка <select> в jQuery
В следующем примере показано, как отображать и скрывать элементы <div>
на основе раскрывающегося списка или выбранного параметра в поле <select>
с помощью jQuery-метода change()
в сочетании с методами show()
и hide()
. Блоки <div>
в этом примере по умолчанию скрыты с помощью CSS-свойства display
, для которого установлено значение none
.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery Show Hide Elements Using Select Box</title>
<style>
.box{
color: #fff;
padding: 20px;
display: none;
margin-top: 20px;
}
.red{ background: #ff0000; }
.green{ background: #228B22; }
.blue{ background: #0000ff; }
</style>
<script src="//code.jquery.com/jquery-1.12.4.min.js"></script>
<script>$(document).ready(function(){ $("select").change(function(){ $(this).find("option:selected").each(function(){ var optionValue = $(this).attr("value"); if(optionValue){ $(".box").not("." + optionValue).hide(); $("." + optionValue).show(); } else{ $(".box").hide(); } }); }).change();
});
</script>
</head><body> <div> <select> <option>Выберите цвет</option> <option value="red">Красный</option> <option value="green">Зеленый</option> <option value="blue">Синий</option> </select> </div> <div class="red box">Вы выбрали <strong>красный вариант</strong></div> <div class="green box">Вы выбрали <strong>зеленый вариант</strong></div> <div class="blue box">Вы выбрали <strong>синий вариант</strong></div></body></html>