2011-05-26 50 views
1

這裏是我的HTML:jQuery:追加最後一個?

<ol> 
    <li>Item 1</li> 
    <li>Item 2</li> 
    <li>Item 3</li> 
</ol> 

然後我追加一個新項目本:$('ol').append('<li>New item</li>');

但是,我想要做的,是最後一個項目之前追加新的。所以在這個例子中,新的列表項將被放置在第二個和第三個之間。列表中的項目數量可能少至2個,也可能多達數百個,但應始終在最後一個項目之前插入。

回答

13

對於這一點,你必須選擇最後一個列表項,然後告訴jQuery來添加新的選擇的一個前:

$('ol li:last').before('<li>New item</li>'); 
2
$('ol').last().prev().append('<li>New item</li>'); 

應該工作我bel ieve。

或者的確,上述&我下面的人說看起來有點整潔:)

+0

這就是有點回旋 – Neal 2011-05-26 20:09:43

+0

圖,後我看到其他意見:)我習慣於非常明確,而編碼。 – Licargon 2011-05-26 20:10:20

0

我遇到了麻煩,這個時候最後一個列表項有一個特殊的班級。我需要做到這一點:

<ul id="my_ul"> 
    <li>One</li> 
    <li>Two</li> 
    <li class="last_class">Always Last</li> 
</ul> 

$('#my_ul li.last_class').before('<li>New Item</li>');