Это автоматически скроет любые невыбранные опции, покажет только один выбранный, если вам нужно поставить более двух вариантов
<style>
#div1 { position: absolute; display: block; background-color: red; height:300px; width:300px;}
#div2 { position: absolute; display: none; background-color: blue; height:300px; width:300px;}
#div3 { position: absolute; display: none; background-color: green; height:300px; width:300px;}
#div4 { position: absolute; display: none; background-color: pink; height:300px; width:300px;}
#div5 { position: absolute; display: none; background-color: aqua; height:300px; width:300px;}
</style>
<select id="divit">
<option value="div1">div1</option>
<option value="div2">div2</option>
<option value="div3">div3</option>
<option value="div4">div4</option>
<option value="div5">div5</option>
</select>
<script>
function displayVals()
{
$('select#divit > option').each(function()
{
if ($(this).val() == $('select#divit').val())
{
$('#'+$(this).val()).css('display', 'block');
}
else
{
$('#'+$(this).val()).css('display', 'none');
}
});
}
$("select").change(displayVals);
displayVals();
</script>
<div id="div1"></div>
<div id="div2"></div>
<div id="div3"></div>
<div id="div4"></div>
<div id="div5"></div>
Только сторонапримечание: обратите внимание, что в вашем коде вы ставите $
вместо #
в вашей части стиля для div2
. Правильное значение будет #div2 {
вместо $div2 {
* 1014.*