DataTables: Отключить сортировку заголовков, по-прежнему разрешить ручную сортировку

Я использую DataTables и хочу, чтобы сортировка выполнялась с выпадающим меню, а не с щелчком на заголовках таблицы. У меня есть функция сортировки меню выпадающего меню, но я не могу понять, как отключить сортировку заголовка таблицы, не отключая также сортировку меню выпадающего меню. Как отключить сортировку заголовков таблиц?

jsfiddle

JavaScript

function update_sort() { var sort1 = $('#sort1').val(); var sort2 = $('#sort2').val(); var sort3 = $('#sort3').val(); var sorting = [[sort1, 'asc']]; if (sort2) { sorting.push([sort2, 'asc']); } if (sort3) { sorting.push([sort3, 'asc']); } var table_obj = $('table').dataTable(); table_obj.fnDestroy(); table_obj.dataTable({ 'bPaginate': false, 'bFilter': false, 'bInfo': false, 'aaSortingFixed': sorting });
}
update_sort();
$('p select').change(function() { update_sort();
});

HTML

<p> Sort By: <select id="sort1"> <option value="0">Column 1</option> <option value="1">Column 2</option> <option value="2">Column 3</option> </select> Then By: <select id="sort2"> <option value="">---------</option> <option value="0">Column 1</option> <option value="1">Column 2</option> <option value="2">Column 3</option> </select> Then By: <select id="sort3"> <option value="">---------</option> <option value="0">Column 1</option> <option value="1">Column 2</option> <option value="2">Column 3</option> </select>
</p>
<table> <thead> <tr> <th>Column 1</th> <th>Column 2</th> <th>Column 3</th> </tr> </thead> <tbody> <tr> <td>A</td> <td>A</td> <td>C</td> </tr> <tr> <td>A</td> <td>C</td> <td>B</td> </tr> <tr> <td>B</td> <td>B</td> <td>A</td> </tr> <tr> <td>B</td> <td>A</td> <td>C</td> </tr> <tr> <td>C</td> <td>B</td> <td>A</td> </tr> </tbody>
</table>
1 ответ

Вы можете отпереть обработчик кликов:

table_obj.find("th").off("click.DT");

http://jsfiddle.net/bHKNQ/1

licensed under cc by-sa 3.0 with attribution.