2013-02-20 39 views
0

我有一個ul完整的li元素。每個li元素都有一個data-choice屬性。我也有持有這些li元素的正確順序(這些data-choice屬性的索引數組的數組使用jQuery如何根據預設順序(列在變量中)對子列表元素進行重新排序?

例:?

["5123ee904210a6ad0d00001c", "5123ee904210a6ad0d00001b", "5123ee904210a6ad0d00001a", "5123ee904210a6ad0d000019"] 

如何採取的基於陣列上的列表

我想出了這一個,但只是想我會分享解決方案

回答

1
 var order = ["5123ee904210a6ad0d00001c", "5123ee904210a6ad0d00001b", "5123ee904210a6ad0d00001a", "5123ee904210a6ad0d000019"] 
     $elems = this.$('.sorting-question li').remove(); 

     $elems.sort(function(a, b){ 
      var a_i = order.indexOf($(a).data('choice')); 
      var b_i = order.indexOf($(b).data('choice')); 
      return a_i > b_i; 
     }); 

     this.$('.sorting-question').append($elems); 
相關問題