2013-03-22 22 views
2

我有一个父DIV中的div,其中一些有一个ID的列表中的所有元素,有的则没有(故意),但它们都具有相同的类。我怎样才能得到一个没有分配ID的div列表?jQuery的越来越没有一个ID分配

<div class='AllQuestions'> 
    <div class='questionList'>Something Something</div> 
    <div class='questionList'>Something Something</div>   
    <div class='questionList' id='question-20'>Something Something</div> 
    <div class='questionList' id='question-22'>Something Something</div>   
    <div class='questionList'>Something Something</div> 
    <div class='questionList' id='question-100'>Something Something</div> 
</div> 

我知道我可以做$('.questionList')让所有的div的名单,但我不知道的方式来过滤掉一个ID的人。 (也ID的不能可靠预测,因为我随机产生它们)

也许一种方法是将某种方式与一个ID删除的人?

+4

你看的jQuery选择文档? http://api.jquery.com/category/selectors/ – 2013-03-22 17:29:29

+0

是的,但它并没有真正帮助我“无身份证”,因为我对他们不是很有经验。我非常了解id和class的基础知识。 – SoluableNonagon 2013-03-22 17:41:15

回答

2

选择列表,然后排除那些与id属性:

$('.questionList').not('[id]') 

请注意,这应该是由于jQuery的缘故,把它全部放在一个选择器中更快从右到左选择器发出嘶嘶声 - 对我来说更容易查看/理解。

+0

我认为这是最容易实现的,但所有的答案都很好。这对我的大名单工作起来要快一点。 – SoluableNonagon 2013-03-22 17:48:16

4

您可以使用$('.AllQuestions .questionList:not([id])')。这应该很好。

请查看以下链接:

+0

@Matt Ball正处于编辑的中间;-) – 97ldave 2013-03-22 17:33:38

+1

非常直接,很棒的答案,不知道我可以一次选择两个类。 – SoluableNonagon 2013-03-22 17:49:16

+0

感谢您的评论。任何时候! – 97ldave 2013-03-22 18:37:48

1

试试这个:

var list = $(".questionList:not([id])"); 
+1

真棒答案,这也适用。我喜欢那个不在选择器的内部。 – SoluableNonagon 2013-03-22 17:49:44

+0

@EliteOctagon我的荣幸。干杯 – 2013-03-22 17:53:51