我有一个由td列之一排序的表。当插入一个新行时,我需要得到新行适合的索引,而不是字母顺序已损坏..
我在这里有一个方法,但它只适用于数字..你怎么能用字符串呢?
this.get_row_index = function(value, td_index){
var index = 0;
td_index = td_index ? td_index:0;
$('tr', this.scope.tbl_list).each(function(){
if(parseInt($('td', this).eq(td_index).html()) > value){
return false;
}
index++;
});
return index;
};
答案 0 :(得分:2)
在javascript字符串中,只需与>
和<
进行比较即可。因此,删除parseInt
应该这样做。
答案 1 :(得分:0)
假设它是您要排序的第一列,我发现它有效:
function sortAlpha(a,b){
return a.innerHTML > b.innerHTML ? 1 : -1;
};
$(function() {
$('table#thisOne tr').sort(sortAlpha).appendTo('table#thisOne');
});
..对此表进行排序:
<table id="thisOne">
<tr><td>Zebra</td><td>0</td></tr>
<tr><td>Bees</td><td>11</td></tr>
<tr><td>Apples</td><td>101</td></tr>
<tr><td>Carrots</td><td>19</td></tr>
</table>