2009-10-27 76 views
2

如何選擇所有具有父類節點沒有類「myClass」的類「myClass」的節點。jQuery選擇父項不屬於給定類的項目

例如,我有以下HTML:

<div class="myContainer"> 
    <div class="myClass" id="d1"> 
     <div class="myClass" id="d2"></div> 
     <div class="myClass" id="d4"></div> 
    </div> 
    <div class="myClass" id="d3"></div> 
</div> 

,我想與ID爲「D1」和「D3」

實際上元素的列表,我試圖寫一個代碼,從該示例將HTML與表格,如列表:

d1 
    d2 
    d4 
d3 

(可以有更多descedant節點)

回答

7

我想出了一些可能的解決方案。也許:

$(":not(.myClass) > .myClass") 

或者,如果你想超越的直接父:

$(":not(.myClass) .myClass") 

這也可能工作:

$(".myClass:has(:not(.myClass))") 

爲您的確切例如更好的解決方案:

$(".myContainer > .myClass") 
+0

謝謝。第一種解決方案比較好,因爲我不確定總是有一個類爲「myContainer」的父節點 – kipelovets 2009-10-27 13:49:44