我是法国人,请不要害怕我的句子错误。
我正在尝试对包含rowspan的单元格的标签进行排序:
但是对于datatables或tablesorter,我不知道是否可能。你知道怎么用tablesorter ou数据表做到这一点吗?你知道另一个可以做到这一点的插件吗?感谢。
答案 0 :(得分:1)
您可以使用此插件: 1. http://tinysort.sjeiti.com/
答案 1 :(得分:1)
我最终修改了这个实现:
https://github.com/Mottie/tablesorter/issues/806
$('#results-table').bind("sortEnd updateComplete",function(e, table) {
$(table).find("[data-row]").each(function(idx, parent){
var $parent = $(parent);
var $rows = $(table).find('[data-parent="'+$parent.data('row')+'"]');
$rows.after($parent);
$rows.show();
});
});
我将data-parent
属性设为父tr的数据attr。然后我给了data-row
attr。
这样可以保留组内的顺序,只保留组中第一行的组。
例如,请看这个小提琴: http://jsfiddle.net/djhqmt92/
答案 2 :(得分:0)
“jQuery tablesorter - 标题中的rowspan导致奇怪的行为”
当我用tableorter面对它时,我自己想出了问题,当然是通过谷歌搜索。 现在它工作得很好。
var headers = {};
headers[0]={ sorter: false };
var tds={}
$('table').tablesorter({
headers: headers
});
$("table").bind("sortStart",function() {
$('table tbody tr:first td').each(function(i,h){
if (this.rowSpan>1) {
$(this).css('background','#CCC');
headers[i] = { sorter: false };
tds[i]=h;
h.remove()
}
});
}).bind("sortEnd",function() {
$.each(tds,function(i,td){
$('table tbody tr:first td:eq('+(i-1)+')').after(td);
});
$('table tbody tr').each(function(i,tr){
$('td:first',tr).html(i+1);
});
});
答案 3 :(得分:0)
要添加到Aju M T的答案,我必须做一个表,其中rowspan在第一个TD上,所以这个修复在这样的表上不起作用:
它有助于在表格前添加虚拟TD并添加CSS
dummy-tab {
display: none;
}
像这样: