簡體   English   中英

從列表中刪除項目

[英]Remove item from list

我想從我的無序列表中刪除所有li但我想在最后一個li之前保留li任何人都知道它是如何完成的?

我現在有

$('.pagination ul li:not(:last)').remove();

但除了最后一個之外,它會刪除所有內容,因此它不正確

使用:eq()帶有負索引的:eq() - 這將從集合的末尾而不是從開頭計算。

在您的情況下,您將要使用-2的索引( -1將是最后的<li> ),如下所示:

$('.pagination ul li:not(:eq(-2))').remove();

這是一個快速演示

為了這個答案的完整性,這里是另一種(可以說是更易讀的)方法:

$('.pagination ul li:last-child').prev().siblings().remove();

你可以在這里看到它: http//jsfiddle.net/bBxDL/1

使用Javascript

var $items = $('.pagination ul li');

$items.not($items.eq($items.length-2)).remove();

HTML

<div class="pagination">
    <ul>
        <li>Page 1</li>
        <li>Page 2</li>
        <li>Page 3</li>
        <li>Page 4</li>
        <li>Page 5</li>
    </ul>
</div>

工作示例 http://jsfiddle.net/B8NPV/

那么你可以使用nth-last-of-type來獲取最后一個之前的那個。 附jsfiddle http://jsfiddle.net/zjLph/

HTML

<div class="pagination">
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
    </ul>
</div>

JS

$('.pagination ul li').filter(':not(:nth-last-of-type(2))').remove();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM