如何通过使用jQuery来更改html标签的顺序

我想通过使用jQuery来做以下步骤。 有谁知道伟大的解决方案?

  • 获取“ul”元素的DOM对象。

    <ul id="rows">
        <li class="row1">
            <a class="row1-1" href="/kensaku2/Page1" title="page1">
            2011/11/16</a>
        </li>
        <li class="row2">
            <a class="row1-2" href="/kensaku2/Page2" title="page2">
            2011/11/15</a>
        </li>
        <li class="row3">
            <a class="row1-3" href="/kensaku2/Page3" title="page3">
            2011/12/21</a>
        </li>
        <li class="row4">
            <a class="row1-4" href="/kensaku2/Page4" title="page4">
            2011/12/05</a>
        </li>
    </ul>
    
  • 找到“a”元素的内容等于“2011/12/21”的“li”元素。 (这是“row3”li元素。)

  • 将“li”元素移动到头部。 (另见下面的代码。)

    <ul id="rows">
        <li class="row3">
            <a class="row1-3" href="/kensaku2/Page3" title="page3">
            2011/12/21</a>
        </li>
    
        <li class="row1">
            <a class="row1-1" href="/kensaku2/Page1" title="page1">
            2011/11/16</a>
        </li>
        <li class="row2">
            <a class="row1-2" href="/kensaku2/Page2" title="page2">
            2011/11/15</a>
        </li>
        <li class="row4">
            <a class="row1-4" href="/kensaku2/Page4" title="page4">
            2011/12/05</a>
        </li>
    </ul>
    
  • 我已经知道如何获得像这样的“ul”元素的DOM对象。

        $("#rows").get(0)
    

    但我不知道第2步和第3步。所以,我想问问专家。


    这将选择文本为“2011/12/21” a元素并将父项li移动为第一个孩子:

    $('#rows a:contains("2011/12/21")').parent().prependTo('#rows');
    

    演示


    $("#rows li").filter(function() {
    
        // trimming is needed in this case, it seems
        return $.trim($(this).text()) === "2011/12/21";
    }).prependTo("#rows");
    

    演示。


    $("#rows li a").filter(function(){return $(this).text()=='2011/12/21'})
    

    这将选择所需的值将其移动到您想要的位置

    链接地址: http://www.djcxy.com/p/42541.html

    上一篇: How to change order of html tag by using jquery

    下一篇: jQuery Move div into another div