请看一下(fiddle)。我想在选择框中使用数据属性来获取类名并隐藏一些无序列表项。但是我很难找到如何使用show()
重置列表并在隐藏后显示所有项目。任何人都可以告诉我如何将第一个选项作为重置选项吗?
JS代码:
$(document).ready(function(){
$(".showhidelist").change(function() {
var selected = $(this).find('option:selected');
selected = selected.data('hide');
$("."+selected).hide();
});
});
HTML
<select class="showhidelist">
<option data-hide="">Reset/Show All</option>
<option data-hide="year">Hide Year</option>
<option data-hide="month">Hide Month</option>
</select>
<ul id="list">
<li class="year">2004</li>
<li class="month">Feb</li>
<ul>
答案 0 :(得分:3)
隐藏值后,您没有将选项重置为初始状态。使用$('li')。show();重置li以显示,然后根据选择执行操作。
$(document).ready(function(){
$(".showhidelist").change(function() {
var selected = $(this).find('option:selected');
$('li').show();
selected = selected.data('hide');
$("."+selected).hide();
});
});