如何使用Jquery显示/隐藏选定的Li

时间:2013-03-02 12:00:26

标签: jquery html-lists show-hide

我的 UL 标记包含 Li ,其中包含许多classnames
我想show那些classname are same隐藏其他人的李。

在这里 的 JSFiddle DEMO

例如这里如果我点击class1然后“John,Michle,Alex”将会看到休息所有必须隐藏

编辑: 在隐藏列表的同时排序Li

解答:

$(this).show();更改为  $(this).parent('Li').show();解决了我的空白问题:)

2 个答案:

答案 0 :(得分:1)

你在jsfiddle中犯了一个简单的错误。 这是fix

我换了一行:

if ($('#emplistName Ul Li Span').hasClass(className) === true) {

为:

if ($(this).hasClass(className) === true) {

答案 1 :(得分:1)

  1. 请勿使用.live(),不推荐使用
  2. 不要使用.each(),这是不必要的
  3. $("ul.tagingUL li").on("click", function () {
        var className = $(this).attr('class');
        $('#emplistName ul li span.'+className).show();
        $('#emplistName ul li span:not(.'+className+')').hide();
    });
    

    JSFIDDLE