Я немного борюсь с обходом в jQuery.Вот соответствующая разметка:
<ul id="sortable" class="ui-sortable">
<li>
<img src="http://ecx.images-amazon.com/images/I/51Vza76tCxL._SL160_.jpg">
<div class="controls">
<span class="move">✜</span>
<span class="delete">✘</span>
</div>
<div class="data">
<h1>War and Peace (Oxford World's Classics)</h1>
<textarea>Published to coincide with the centenary of Tolstoy's death, here is an exciting new edition of one of the great literary works of world literature.</textarea>
</div>
</li>
<li>
<img src="http://ecx.images-amazon.com/images/I/51boZxm2seL._SL160_.jpg">
<div class="controls">
<span class="move">✜</span>
<span class="delete">✘</span>
</div>
<div class="data">
<h1>A Christmas Carol and Other Christmas Writings (Penguin Classics)</h1>
<span>Optionally, write your own description in the box below.</span>
<textarea>Dicken's Christmas writings-in a new, sumptuous, and delightful clothbound edition.</textarea>
</div>
</li>
</ul>
Это код для элемента «Сортируемый» пользовательского интерфейса jQuery.Вот что я хочу, чтобы это произошло.
Когда нажата кнопка «Удалить» ($('.delete')
), я хочу, чтобы элемент <li>
, в котором она содержится, был удален.$('.delete').parent().parent().remove();
но в случае наличия двух элементов, кажется, удаляются оба из них.Я немного смущен этим.Я также пытался использовать closest()
, чтобы найти ближайший li
, но это тоже не сработало.
Как мне лучше всего пройти DOM в этом случае?
Спасибо!
Джек