如何选择列表的所有元素,但一个命名项除外

时间:2013-11-09 18:22:39

标签: jquery

我正在尝试选择列表中的所有元素,但ID为用户数据的元素除外,但这似乎排除了所有元素。我错过了什么?

$('.menu li li:not(#user-data)').click(function () {});

DOM结构:

<ul class="menu">
    <li class="user-data" id="user-data"></li>
    <li></li>
</ul>

2 个答案:

答案 0 :(得分:3)

你想要这个:

$('.menu li:not(#user-data)')

您在li元素中寻找li元素。

答案 1 :(得分:0)

您可以使用类创建新的div,它只包含您要选择的菜单的一部分。例如

   <div class="menu">
     <div class="select">
    <ul>
        <li>Home</li>
        <li>Home1</li>
        <li>Home2</li>
     </ul>
         </div>
     <div id="user-data"> ..... </div>
   </div>

然后你的jquery看起来像

$('.select ul li').click(function(){ .... 
      // body  )};