附加到第二个到最后一个李

时间:2011-02-23 19:19:07

标签: jquery

好的,我有这个HTML结构,我需要在test3之后继续添加新的li,依此类推......在表单li之前。我知道如何在jquery中执行追加逻辑但是我如何隔离并确保我可以继续这样做....也许使用实时函数。

<td class="resources_present">
<ul>
    <li><a href="http://test.com">http://test.com</a></li>
    <li><a href="http://test2.com">http://test2.com</a></li>
    <li><a href="http://tes3.com">http://test3.com</a></li>
<li><form method="post" id="new_resource" class="new_resource" action="/resources" accept-charset="UTF-8"><div style="margin: 0pt; padding: 0pt; display: inline;"><input type="hidden" value="✓" name="utf8"><input type="hidden" value="BEeMlTtPiMi8mv/whQ2z757CTTOnNl0oiPpN3WdqSBg=" name="authenticity_token"></div>
  <div class="field">
    <input type="text" size="30" name="resource[url]" id="resource_url">
    <input type="hidden" value="5" name="resource[course_id]" id="resource_course_id">
  </div>
  <div class="actions">
    <input type="submit" value="Create" name="commit" id="resource_submit" style="display: inline;">
        <img class="noShow" src="/images/spinner.gif" style="display: none;">
  </div>
</form></li>
</ul>
</td>

基本上我需要找到添加它的选择器:

    <li><a href="http://test4.com">http://test4.com</a></li> // after the 

            <li><a href="http://test3.com">http://test3.com</a></li> // and continue to do that with 5, 6 , 7, and so on

3 个答案:

答案 0 :(得分:14)

许多方法都可以做到这一点。这是一个:

$('li:last').prev();

并添加:

$('li:last').prev().after('<li><a href="http://test4.com">http://test4.com</a></li>');

答案 1 :(得分:8)

$("#yourselectorid li").eq(-2)应该做的伎俩

修改

假设您已经存在至少2个<LI>(一个是表格)

答案 2 :(得分:0)

您应该使用.after()功能。

为test3提供一个类或ID,以便轻松找到它:

<li id="insertafter"><a href="http://test3.com">http://test3.com</a></li>

然后使用:

$('#insertafter').after('<li><a href="http://test4.com">http://test4.com</a></li>');

还有一个before功能:)