2016-06-07 36 views
0

比方說,我們有一個頁面多個表和他們每個人看起來就像這樣:如何使用Jquery根據它們的值對多個表進行排序?

<table> 
<tr> 
    <td class= "fi">102,215,231.02</td> 
    <td class= "se">215,321</td> 
    <td class= "th">1,002</td> 
    <td class= "fo">0</td> 
</tr> 
<tr> 
    <td class= "fiv">2,251</td> 
    <td class= "si">55,544,444</td> 
    <td class= "sev">123,000.25</td> 
    <td class= "ei">25</td> 
</tr> 

</table> 

我需要弄清楚如何基於一個表(而不是他們行,表本身順序)排序它們的值(例如類「ei」的值)使用Jquery。我能找到的只是如何排序表格的行而不是表格本身。

例子:

基於帶班 「EI」 的價值觀,我想重新安排這樣的:

<table id="2135"> 
<tr> 
    <td class= "fi">102,215,231.02</td> 
    <td class= "se">215,321</td> 
    <td class= "th">1,002</td> 
    <td class= "fo">0</td> 
</tr> 
<tr> 
    <td class= "fiv">2,251</td> 
    <td class= "si">55,544,444</td> 
    <td class= "sev">123,000.25</td> 
    <td class= "ei">13</td> 
</tr> 

</table> 
<table id="2131"> 
<tr> 
    <td class= "fi">102,215,231.02</td> 
    <td class= "se">215,321</td> 
    <td class= "th">1,002</td> 
    <td class= "fo">0</td> 
</tr> 
<tr> 
    <td class= "fiv">2,251</td> 
    <td class= "si">55,544,444</td> 
    <td class= "sev">123,000.25</td> 
    <td class= "ei">50</td> 
</tr> 

</table> 
<table id="2129"> 
<tr> 
    <td class= "fi">102,215,231.02</td> 
    <td class= "se">215,321</td> 
    <td class= "th">1,002</td> 
    <td class= "fo">0</td> 
</tr> 
<tr> 
    <td class= "fiv">2,251</td> 
    <td class= "si">55,544,444</td> 
    <td class= "sev">123,000.25</td> 
    <td class= "ei">25</td> 
</tr> 

</table> 

進入這個:

<table id="2135"> 
<tr> 
    <td class= "fi">102,215,231.02</td> 
    <td class= "se">215,321</td> 
    <td class= "th">1,002</td> 
    <td class= "fo">0</td> 
</tr> 
<tr> 
    <td class= "fiv">2,251</td> 
    <td class= "si">55,544,444</td> 
    <td class= "sev">123,000.25</td> 
    <td class= "ei">13</td> 
</tr> 

</table> 
<table id="2129"> 
<tr> 
    <td class= "fi">102,215,231.02</td> 
    <td class= "se">215,321</td> 
    <td class= "th">1,002</td> 
    <td class= "fo">0</td> 
</tr> 
<tr> 
    <td class= "fiv">2,251</td> 
    <td class= "si">55,544,444</td> 
    <td class= "sev">123,000.25</td> 
    <td class= "ei">25</td> 
</tr> 

</table> 
<table id="2131"> 
<tr> 
    <td class= "fi">102,215,231.02</td> 
    <td class= "se">215,321</td> 
    <td class= "th">1,002</td> 
    <td class= "fo">0</td> 
</tr> 
<tr> 
    <td class= "fiv">2,251</td> 
    <td class= "si">55,544,444</td> 
    <td class= "sev">123,000.25</td> 
    <td class= "ei">50</td> 
</tr> 

</table> 
+0

你想如何觸發表激活? – BradTheBrutalitist

+0

他們都是同一父母的兄弟姐妹嗎?這會產生很大的差異。 – 2016-06-07 21:50:31

+1

如果只做一次,最好在服務器上安排表格。 – Mottie

回答

0

您可以按.ei元素,但更換他們最親近的父母<table>

var eis = $('.ei').sort(function(a,b){ 
    return $(a).html() - $(b).html(); 
}); 

eis.each(function(i){ 
    $('body').append($(this).closest('table')) 
}) 

這裏是工作fiddle

相關問題