私はフランス人なので、私の文章の間違いを気にしないでください。
rowspan のセルを含むタブをソートしようとしています:
しかし、データテーブルまたはテーブルソーターでは、それが可能かどうかわかりません。tablesorter ou datatablesでこれを行う方法を知っていますか? これを行うことができる他のプラグインを知っていますか? ありがとう。
私はフランス人なので、私の文章の間違いを気にしないでください。
rowspan のセルを含むタブをソートしようとしています:
しかし、データテーブルまたはテーブルソーターでは、それが可能かどうかわかりません。tablesorter ou datatablesでこれを行う方法を知っていますか? これを行うことができる他のプラグインを知っていますか? ありがとう。
私はこの実装を変更することになりました:
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 のデータ属性にしました。次に、属性を指定したdata-row
子行。
これにより、グループ内の順序が維持され、グループ内の最初の行だけがグループ化されます。
たとえば、このフィドルを参照してください: http://jsfiddle.net/djhqmt92/
このプラグインを使用できます: 1. http://tinysort.sjeiti.com/
「jQuery テーブルソーター - ヘッダーの行スパンが異常な動作を引き起こす」
もちろん、グーグルで tablesorter に直面したとき、私は自分で問題を見つけました。そして今、それは完全に機能しています。
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);
});
});