【发布时间】:2012-11-14 21:11:40
【问题描述】:
我有 html 和 jquery 来对我的表格进行排序(也有非标准排序(使用多 tbody))。
我的代码可以在这里找到:http://jsfiddle.net/GuRxj/
如您所见,带有价格的 td(在俄罗斯 Цена 上)按升序排序(但技术不是!?为什么?(这也是一个问题))...但是如您所见,我需要发送这个tr 的价格在这个 tbody 的顶部(现在在底部),而 empty-price-tr 发送到底部...... 如何做到这一点?
部分js:
$('.prcol').click(function(e) {
var $sort = this;
var $table = $('#articles-table');
var $rows = $('tbody.analogs_art > tr',$table);
$rows.sort(function(a, b){
var keyA = $('td:eq(3)',a).text();
var keyB = $('td:eq(3)',b).text();
if (keyA.length > 0 && keyB.length > 0)
{
if($($sort).hasClass('asc')){
console.log("bbb");
return (keyA > keyB) ? 1 : 0;
} else {
console.log(keyA+"-"+keyB);
return (keyA > keyB) ? 1 : 0;
}
}
});
$.each($rows, function(index, row){
//console.log(row);
$table.append(row);
//$("table.123").append(row);
});
e.preventDefault();
});
【问题讨论】:
-
var $sort = this;让人们感到困惑。如果变量以$为前缀,人们期望它包含一个jQuery 对象。 -
@ThiefMaster 我从这里拿它:designchemical.com/blog/index.php/jquery/…
-
你不应该只是复制和粘贴潜在的错误代码...
-
@ThiefMaster 在这里提供更好的建议stackoverflow.com/questions/13376751/… 但是我没有找到好的解决方案,没有使用库!
-
@ThiefMaster 写的不错,但不要给空洞的建议
标签: javascript jquery html