Удалить элемент, когда у него есть указанный дочерний элемент - PullRequest
1 голос
/ 13 октября 2010

Как я могу удалить элемент списка, если у него есть дочерняя ссылка какого-то определенного идентификатора?Поэтому, глядя на код ниже, я хотел бы найти <li> с <a> из id=link1 и удалить это li.

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

Я пробовал код ниже, ноне работает:

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

Ответы [ 3 ]

2 голосов
/ 13 октября 2010

Ваш вопрос и ваш код противоречат друг другу, поэтому я предоставлю ответы для обоих случаев.

Если вы хотите удалить <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();
});
2 голосов
/ 13 октября 2010

Вы можете использовать атрибут равных атрибутов и :has(), чтобы увидеть, содержит ли он элемент, соответствующий этому ..., тогда просто вызовите .remove() об этом.

$("li:has(a[href='#link1'])").remove()
0 голосов
/ 13 октября 2010
$(function() {
     $(".nav-tab > a[id='yourID']").css('display', 'none');
 }); 

Если якорь:

$(function() {
     $(".nav-tab > a[href='yourLink']").css('display', 'none');
 }); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...