【问题标题】:Javascript filter visibility of html elements using radio buttonsJavascript 使用单选按钮过滤 html 元素的可见性
【发布时间】:2014-07-02 03:13:02
【问题描述】:

我见过许多使用复选框和单选按钮进行过滤以显示不同类别的示例。问题是对于两个选定的类,任何一个类的所有元素都会显示,但我希望它只显示两个类的元素。这是一些示例代码:http://jsfiddle.net/DH3m3/

js:

function filterItems() {
    var colors = $(":radio:checked").map( function(){ return this.value; }).get();
    var goodClasses = colors.join(",");
    $(".item").hide().filter(goodClasses).show();
}

filterItems();

$(":radio").change(filterItems);

和html:

<label for="one">one</label><input id="one" type="radio" name="number" value=".one" />
<label for="two">two</label><input id="two" type="radio" name="number" value=".two" />
<label for="none">none</label><input id="none" type="radio" name="number" value=".none" />
<hr/>
<label for="red">red</label><input id="red" type="radio" name="color" value=".red" />
<label for="blue">blue</label><input id="blue" type="radio" name="color" value=".blue" />
<label for="green">green</label><input id="green" type="radio" name="color" value=".green" />
<label for="non">none</label><input id="non" type="radio" name="color" value=".none" />
<hr/>
<div class="item one yellow">yellow</div>
<div class="item two red">red</div>
<div class="item one blue">blue</div>
<div class="item two green">green</div>
<div class="item one red green">red green</div>
<div class="item two red blue">red blue</div>
<div class="item one blue green">blue green</div>
<div class="item two red blue green">red blue green</div>

所以在这个例子中,如果选择了“one”和“red”,那么应该显示的元素应该是“red green”,或者如果“two”和“blue” - “red blue” ”和“红蓝绿”。有什么想法或想法吗?

【问题讨论】:

    标签: javascript html filter show


    【解决方案1】:

    你想要multiple class selector。例如对于onered 类,它看起来像.one.red。它同时针对具有两个类的元素。所以你应该为此改变你的类选择器:

    var goodClasses = colors.join("");
    

    演示:http://jsfiddle.net/DH3m3/1/

    【讨论】:

    • 总结一下,我们有一个赢家。谁知道我已经这么近了。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-31
    • 1970-01-01
    • 1970-01-01
    • 2020-09-27
    • 2012-05-11
    • 1970-01-01
    • 2017-10-15
    相关资源
    最近更新 更多