jquery datatable禁用特定行中的排序

mrr*_*rsb 10 javascript datatable jquery

如何使用类禁用jquery数据表中特定行/列的排序?

这是我的样本表;

    <table>
    <thead>
    <tr>
    <th class="sorting_disabled">Title1</th>
    <th class="">Title2</th>
    <th class="sorting_disabled">Title3</th>
    </tr>
    </thead>
    <tbody>
    <tr><td>Tag 1</td><td>Date 1</td><td>Date 2</td></tr>
    <tr><td>Tag 2</td><td>Date 2</td><td>Date 2</td></tr>
    <tr><td>Tag 3</td><td>Date 3</td><td>Date 3</td></tr>
    <tr><td>Tag 4</td><td>Date 4</td><td>Date 4</td></tr>
    <tr><td>Tag 5</td><td>Date 5</td><td>Date 5</td></tr>
....
    </tbody>
    </table>
Run Code Online (Sandbox Code Playgroud)

脚本;

$('.sortable thead tr th.sorting_disabled').livequery(function() {
       $(this).removeClass('sorting');
       $(this).unbind('click');
    });
Run Code Online (Sandbox Code Playgroud)

上面的代码可以工作,但如果我点击下一列有排序的列,它会再次显示一个箭头.虽然它不可点击;(

如何通过使用类而不使用/重绘表来禁用排序.

Pau*_*lgo 9

您可以使用定义中的类禁用排序.只需将此代码添加到数据表初始化:

// Disable sorting on the sorting_disabled class
"aoColumnDefs" : [ {
    "bSortable" : false,
    "aTargets" : [ "sorting_disabled" ]
} ]
Run Code Online (Sandbox Code Playgroud)


小智 0

我希望下面的代码适用于您的情况。

        $("#dataTable").dataTable({
            "aoColumns": [{"bSortable": false}, null,{"bSortable": false}]
        });
Run Code Online (Sandbox Code Playgroud)

您需要通过“bSortable”对该特定列禁用排序。