2010-10-12 94 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

相关问题