Выбрать элементы, в которые вложен элемент с id.
Допустим, пусть будет что-то такое:
<div id='rss'> <ul> <li id='d1'><div id='h1'></div></li> <li id='d2'><div id='h2'></div></li> <li id='d3'><div id='h1'></div></li> <li id='d4'><div id='h1'></div></li> <li id='d5'><div id='h3'></div></li> </ul> </div> Так вот. Нужно удалить элементы <li>(со всем содержимым), внутри которых есть элемент <div> с id=h1 Пробовал так: gid='h1'; id = $('div#rss_list li div[id='+gid+']').parent().remove(); - Не сработало id = $('div#rss_list li div#'+gid).parent().remove(); - Отказалось выполняться. id = $('div#rss_list li div#'+gid).remove(); - Удалило div элементы. id2 = $('div#rss_list li div#'+gid).remove(); - Отказалось исполнять. id2 = $('div#rss_list li div#'+gid).prev().remove(); - Отказалось. id2 = $('div#rss_list li div#'+gid).().remove(); Чисто по логике разберу пример, который должен был сработать: id = $('div#rss_list li div[id='+gid+']').parent().remove(); 1) Выбираем элемент div c id = rss. 2) В найденном элементе нахожу элементы li. 3) А в них нахожу элементы div c id=gid 4) У всех найденных элементов найду прямого родителя ( это должен быть <li> ) 5) Удалю всех родителей найденных элементов <div> Что я делаю не так? :) Заранее спасибо Вадим |
Цитата:
|
Но если уж очень хочется, то...
<div id='rss'>
<ul>
<li id='d1'><div id='h1'></div></li>
<li id='d2'><div id='h2'></div></li>
<li id='d3'><div id='h1'></div></li>
<li id='d4'><div id='h1'></div></li>
<li id='d5'><div id='h3'></div></li>
</ul>
</div>
<script>
var goodbye = [1, 3];
var items = $('#rss div');
items.each(function(){
var id = Number(this.id.substring(1));
if (goodbye.indexOf(id) >= 0)
$(this.parentNode).remove();
});
</script>
|
атрибут Id уникален!То4ка.Если так хочется замените на класс или атрибут data.
|
| Часовой пояс GMT +3, время: 21:39. |