我有这个 Html 代码
<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();
});
});
现在的问题是所有 div 元素都隐藏在页面加载中。我想默认显示第一个选项值,并且当更改 div 内容时也会更改。
编辑:
谢谢你们的帮助
首先我的代码中有一个错字,所以'selectOtion'应该是'selectOption'
其次,使默认选择显示我们可以触发 DOMReady 上的更改事件作为“未定义”解决方案
所以javascript是
$(function(){
$('.selectOption').change(function(){
var selected = $(this).find(':selected').text();
//alert(selected);
$(".desc").hide();
$('#' + selected).show();
}).change()
});
或者
$(function(){
$('#Analytics').show(); // Will show the div
$('.selectOption').change(function(){
var selected = $(this).find(':selected').text();
//alert(selected);
$(".desc").hide();
$('#' + selected).show();
});
});