我有一個頁面層次結構是這樣的:選擇嵌套元素
<div class="panel" attribute-id="1">
<button class="delete">
<div class="panel" attribute-id="2" association-id="20">
<button class="delete">
</div>
</div>
....
所以我有一堆這些面板裏面嵌套的面板,和我想上單擊處理程序創建上的刪除按鈕只有頂層面板(所以面板中沒有關聯ID的面板)。父母面板和子面板之間的唯一區別在於,子面板具有額外的屬性「關聯ID」。
所以我可以選擇頂級面板只有像這樣:
$('.panel[attribute-id]:not([association-id]')
但是,如果我試圖從這些像獲得了刪除按鈕:
$('.panel[attribute-id]:not([association-id] .delete')
顯然,我仍然會得到孩子的按鈕。
我無法修改html,我怎麼能這樣做?
每個OP - 「我無法修改html」 – IrkenInvader
好。 OP,剩下的html是什麼樣的?可以使用已經存在的其他東西。 panel_group div在哪裏?基本上,你需要的是下一個級別的元素。如果這是面板組,那麼你可以做「.panel-group> .panel」。 「>」運算符與所有的孩子相比都有了下一個級別。 –