0

Asp mvc を使用しています。私はdataTablesであるこのテーブルを持っています。

マイページでは、ユーザーの権限によって、テーブルの列が表示される場合と表示されない場合があります。たとえば、このテーブルにはチェックボックスがあり (動的に表示され、一番左の列にあります)、並べ替えられないようにします。また、デフォルトで左側の最初の列を並べ替えたいと思っていました。したがって、チェックボックスが表示されるかどうかに関係なく、チェックボックス以外の最初の列をソート可能にしたいと考えています。これは可能ですか?

4

2 に答える 2

1

このコードにより、ページの読み込み時に昇順および降順でソートするためのクラス「sort-desc」または「sort-asc」を追加することにより、データテーブルの個々の列をソートできます

$('.dom-table').each(function(index) {
        var sort_column=$('.dom-table thead tr').children().index('.sort-desc');
        var sort_oper='desc';
        if(sort_column < 0)
        {
            var sort_column=$('.dom-table thead tr').children().index('.sort-asc');
            sort_oper='asc';
            if(sort_column < 0)
            {
                sort_column=0;
            }
        }
        $(this).dataTable({
        "sDom": 'T<"clear">lfrtip',
        "aaSorting": [[sort_column,sort_oper]],
    });
});

このコードはテストしていませんが、動作するはずです。

于 2012-06-08T13:52:39.523 に答える
1

この質問は長い間ここにあることを知っています。うまくいけば、解決されます。明確に理解できるかどうかはわかりませんが、datatables.net を使用して並べ替えを制御する方法について、このページを参照することをお勧めします。

http://www.datatables.net/release-datatables/examples/advanced_init/sorting_control.html

DataTools のいずれかを使用すると、表示する列を制御したり、表示したい列を選択する機会をユーザーに与えることもできます。ここの例を見てください: http://www.datatables.net/examples/

于 2012-05-02T20:03:48.730 に答える