I have a this Html code
<select class="selectOption">
<option>Analytics</option>
<option>Translation</option>
<option>Poll</option>
</select>
<div id="changingArea">
<div id="Analytics" class="desc">Analytics</div>
<div id="Translation" class="desc">Translation</div>
<div id="Poll" class="desc">Poll</div>
</div>
Css
.desc {display: none;}
Js
$(function(){
$('.selectOtion').change(function(){
var selected = $(this).find(':selected').text();
$(".desc").hide();
$('#' + selected).show();
});
});
The problem now it that all the div elements are hidden in page load. I want to show the first option value by default and when changed the div content is also change.
Example http://jsfiddle.net/bsqVm/
EDIT:
Thank you guys for your help
First there was a typo in my code, so 'selectOtion' should be 'selectOption'
Second to make the default select to show we can trigger the change event on DOMReady as 'undefined' solution
so the javascript is
$(function(){
$('.selectOption').change(function(){
var selected = $(this).find(':selected').text();
//alert(selected);
$(".desc").hide();
$('#' + selected).show();
}).change()
});
or
$(function(){
$('#Analytics').show(); // Will show the div
$('.selectOption').change(function(){
var selected = $(this).find(':selected').text();
//alert(selected);
$(".desc").hide();
$('#' + selected).show();
});
});
Try this: jsfiddle
Auto call event is often the simplest thing to do...
there is a typo in your code
change
$('.selectOtion')
to$('.selectOption')
i have updated your fiddle working fine now have a look
http://jsfiddle.net/bsqVm/4/
To be sure you will always show the correct div,better give value to all option,even it is the same as the text in the options,because if you have multiple languages "Analytics" on Spanish for example will have different text.so better make it like that:
You could add this line to show that div on load:
Here's the DEMO
There is a typo in your code
selectOtion
should beselectOption
. For showing the the div according to selected value you can trigger the change event on DOMReady.http://jsfiddle.net/XCUDF/