Jquery - 使用data()按类排序

时间:2010-08-27 10:40:09

标签: javascript jquery sorting

是否可以使用数据函数对div进行排序?

HTML

<div id="gp_21" class="line">one</div>
<div id="gp_35" class="line">two</div>
<div id="gp_11" class="line">three</div>
<div id="gp_29" class="line">four</div>

<hr />

<div id="check"></div>

JS

$(document).ready(function rt() {

    $('#gp_21').data("rtt", { age: '251351' });
    $('#gp_35').data("rtt", { age: '25131151' });
    $('#gp_11').data("rtt", { age: '251' });
    $('#gp_29').data("rtt", { age: '25131148' });

check();

});


function check()
{

    $('.line').each(function() {

     age = $('#'+this.id+'').data("rtt").age;

     $('#check').append('-> '+age+' - '+this.id+'<br />');


    });

}

工作示例 - &gt; http://www.jsfiddle.net/V9Euk/265/

提前致谢! 彼得

1 个答案:

答案 0 :(得分:0)

嗨请参阅此http://www.jsfiddle.net/V9Euk/268/

function check()
{
    var ages= [];
    var ids = []
    $('.line').each(function() {

         ages[ages.length] = $('#'+this.id+'').data("rtt").age;           
         ids[ids.length] = this.id;
    });    
    ages.sort(sortByAge);
    $(ages).each(function(i, v) {             
        for(key in ids)
        {
            if($("#"+ids[key]).data("rtt").age == v)
            {
                 $('#check').append('-> '+v+' - '+ids[key]+'<br />');   
            }
        }

    });

}
function sortByAge(a, b)
{
      return a-b;
}

您好我更新了我追加排序div的答案。