2013-10-22 21 views
0

我试图隐藏的其他无序列表,它是一个div里面内无法隐藏嵌套列表sRGB是一个div里面

<div id="cssmenu"> 
<ul class="menuoptions"> 
    <li> 

    </li> 

    <li> 
    </li> 

    <li class="Admin"> 

    </li> 
</ul> 

</div> 

我需要隐藏在undordered列表中的第三列表的列表。

这是我试过,但没有工作:

$(#cssmenu .menuoptions ul.Admin).slice(3).hide(); 

请帮助..

+1

你的选择有语法错误,应该是'$(“li.Admin”)。隐藏() ' –

+1

问题出在你的html上。 –

回答

2

由于您使用li.Admin选择,查询返回只有一个元素,所以.slice(3)不会返回任何元素隐藏

$('#cssmenu .menuoptions li.Admin').hide(); 
2

你可以只到:

$("li.Admin").hide(); 

$("#cssmenu").find("li.Admin").hide(); 

$("#cssmenu").find('li').eq(2).hide(); 
1

您可以用CSS做到这一点:

#cssmenu .menuoptions .Admin { 
    display:none; 
} 

和使用jQuery:

$('#cssmenu').find('li.Admin').hide(); 
0
$("#cssmenu .menuoptions ul.Admin").eq(3).hide(); 
0

要么你通过类的名字做其他两个答案建议,或者如果你真的需要第三个元素:

$(#cssmenu .menuoptions li).eq(2).hide(); 

顺便说一句,你正在使用ul.Admin,但事实上,你有一个li.Admin

0

试试这个... 这将帮助你隐藏UL列表中的多个类..

$("#cssmenu ul li").each(function() { 
    if ($(this).attr('class') == "Admin") 
      $(this).hide(); 
}); 
+0

有很多简单的方法!你看过其他答案吗? :) –