Отключить порядок в выбранных столбцах с помощью DataTables

Ситуация
Я не могу отключить сортировку в некоторых столбцах, хотя использую "правильный" код. Я видел несколько сообщений StackOverflow и пробовал ответы. кажется, ничего не работает, и я продолжаю получать ту же ошибку в своей консоли.

SyntaxError: missing } after property list
    "aoColumnDefs": [
//or
SyntaxError: missing } after property list
    "columnDefs": [ {

Код

    $('#tblMarkers').DataTable({
        paging: false,
        searching: false,
        info: false
        "columnDefs": [ {
            "targets": 3,
            "orderable": false
        } ]
    });

РЕДАКТИРОВАТЬ: мне не хватило запятой... Но другой вопрос... как я могу сделать несколько целей?


person Mike Lammers    schedule 17.11.2016    source источник
comment
Вы пропустили запятую в конце этой строки: info: false. Может ли это помочь?   -  person Martin Gottweis    schedule 17.11.2016
comment
Я думаю, что вы размещаете свой код не в том месте. Не могли бы вы разместить код поверх готового документа?   -  person Mir Gulam Sarwar    schedule 17.11.2016
comment
омг... я действительно пропустил эту запятую... Спасибо!! теперь работает...   -  person Mike Lammers    schedule 17.11.2016
comment
@MikeLammers Атрибут target в columnDefs может быть массивом. Таким образом, вы можете указать target: [2,3,4] в текущем столбцеDef, чтобы отключить сортировку в столбцах 2, 3 и 4.   -  person Adrian    schedule 21.11.2016


Ответы (3)


Я использую что-то подобное для этой цели;

 $('#tblMarkers').dataTable({
        "aaSorting": [],
        "aoColumns": [
        null,null,{ "bSortable": false }
        ]
    });

Null относится к значению по умолчанию, а { "bSortable": false } делает столбец несортируемым. Примечание. Это таблица из 3 столбцов, последний столбец которой не подлежит сортировке.

person Qsprec    schedule 17.11.2016

Вы пробовали

$('#tblMarkers').DataTable({
    paging: false,
    searching: false,
    info: false,
    "columnDefs": [ {
        "targets": 3,
        "orderable": false
    } ]
);
person Yisong Qiu    schedule 17.11.2016

Несколько целей — это просто массив индексов. Это работает для меня:

исходный документ

$('#data_table').DataTable({
    "columnDefs": [
        { "orderable": false, "targets": [0, 4, 5, 6] },
        { "orderable": true, "targets": [1, 2, 3] }
    ]
});
person Marco    schedule 28.06.2018