在最后一个位置插入列表元素

时间:2013-08-28 02:33:30

标签: javascript jquery

给出HTML无序列表

<ul id = "master_key_list">
  <li id="master_key_23" class="available_element">Fix the Peanut Butter</li>
  <li id="master_key_24" class="available_element">Focus on Price Sensitivity</li>
  <li id="master_key_25" class="available_element" >Focus on Messaging</li>
  <li id="master_key_26" class="available_element">Create Growth and Retention Funnels</li>
  <li id="new_bp_element_element" class="available_element">Additional Best Practice?</li>
</ul>

如何在最后一个列表元素之前添加另一个列表元素?

我试过

$("#master_key_list li:last").before("<li />").append(appendString);

其中appendString是有效的连接HTML文本。但是,所有这一切都是覆盖最后一个列表元素文本,而不是实际插入它。

3 个答案:

答案 0 :(得分:1)

$("<li>new text</li>").insertBefore($("#master_key_list li:last"));

demo

答案 1 :(得分:0)

正在插入新的列表项,但文本会改变所选的原始li

不使用append,而是使用insertBefore

$("<li />", { text: appendString }).insertBefore("#master_key_list :last-child");

这里是小提琴:http://jsfiddle.net/4GhbW/

答案 2 :(得分:0)

我认为你需要的是

$('<li />', {
    text: appendString
}).insertBefore('#master_key_list li:last')