2010-10-12 152 views
1

如何刪除列表元素,如果它有一個定義的ID的子鏈接?因此,看看下面的代碼,我想找到一個<li><a>id=link1並刪除這li刪除元素時,它有一個指定的子元素

<li class="nav-tab"> 
    <a href="#link1">Component</a> 
</li> 

我嘗試下面的代碼,但它不工作:

$(function() { 
    $('.nav-tab:has(#link1)').css('display', 'none'); 
}); 
+0

這不是'a id =「link1」',這是'somethingelse id =「link1」'的錨鏈接。 – BoltClock 2010-10-12 20:39:36

回答

2

你的問題,你的代碼相互矛盾,所以我會爲這兩種情況提供答案。

如果你想刪除一個<li class="nav-tab">包含子<a href="#link1">

$(function() { 
    $('a[href="#link1"]').parent('li.nav-tab').remove(); 
}); 

如果你想刪除一個<li class="nav-tab">包含子<a id="link1">

$(function() { 
    $('a#link1').parent('li.nav-tab').remove(); 
}); 
+0

'右後,我是在「href」參數之後 – mayer 2010-10-12 20:44:57

+0

Nick Craver的答案更接近您嘗試使用':has()'後的嘗試。 – BoltClock 2010-10-12 20:45:28

-1
$(function() { 
    $(".nav-tab > a[id='yourID']").css('display', 'none'); 
}); 

如果錨:

$(function() { 
    $(".nav-tab > a[href='yourLink']").css('display', 'none'); 
}); 
+0

不,選擇和隱藏'a'元素而不是'li'元素。 – BoltClock 2010-10-12 20:49:48

+0

你是對的,只是複製了前一個,正確的代碼是:'$(「。nav-tab> a [href ='yourLink']」)。closest('li')。remove()' – 2010-10-12 20:53:15

相關問題