In Angular JS how to disable column sort feature for selected columns

前端 未结 2 1760
死守一世寂寞
死守一世寂寞 2020-12-16 16:48

In jquery data table I can disable specific column sort by

\"aoColumnDefs\": [{
                \'bSortable\': false,
                \'aTargets\': [0, 7]
          


        
相关标签:
2条回答
  • 2020-12-16 17:00

    I have tried every possible solution to disable sorting but the only thing that worked for me was : order: false . Use this for reference

    My dtOptions were as below

    vm.dtOptions = {
            dom: '<"top"f>rt<"bottom"<"left"<"length"l>><"right"<"info"i><"pagination"p>>>',
            pagingType: 'simple',
            autoWidth: false,
            responsive: true,
            order: false, // This fixed the issue
            columnDefs : [{
                targets: [0, 1, 2, 3, 4, 5, 6, 7], // column or columns numbers
                orderable: false,  // This was not working
                filterable: false,
                sortable  : false                
                },
                {
                    // Target the actions column
                    targets           : 8,
                    responsivePriority: 1,
                    filterable        : false,
                    sortable          : false,
                    orderable: false
                }                
            ]
        }
    
    0 讨论(0)
  • 2020-12-16 17:08

    The angular-datatables equivalence to

    aoColumnDefs: [{ bSortable: false, aTargets: [0, 4] }]
    

    is

    $scope.dtColumnDefs = [
       DTColumnDefBuilder.newColumnDef(0).notSortable(),
       DTColumnDefBuilder.newColumnDef(4).notSortable()
    ];
    

    ...

    <table class="custom-table" dt-column-defs="dtColumnDefs" datatable="ng" dt-options="dtOptions" id="contacts-list-table"></table>
    

    You must include DTColumnDefBuilder in the controller :

    myApp.controller("ListCtr", ['DTOptionsBuilder', 'DTColumnDefBuilder',
        function(DTOptionsBuilder, DTColumnDefBuilder) {
           $scope.dtOptions = DTOptionsBuilder.newOptions().withDOM('C<"clear">lfrtip');
           $scope.dtColumnDefs = [
              DTColumnDefBuilder.newColumnDef(0).notSortable(),
              DTColumnDefBuilder.newColumnDef(4).notSortable()
           ];
        }
    ])
    

    see http://l-lin.github.io/angular-datatables/archives/#!/api.

    0 讨论(0)
提交回复
热议问题