Настройте (размер столбца) все видимые таблицы данных

0

Я пытаюсь создать общий JS-метод, который будет корректировать (fnAdjustColumnSizing()) все видимые таблицы данных. Проблема в том, что я просто не могу получить синтаксис совершенно правильно...

До сих пор я получил это близко:

$.fn.dataTable.fnTables(true); //this gets all visible dataTables...
$('#givenTable').dataTable().fnAdjustColumnSizing(); //this  adjusts a given dataTable

$.each($.fn.dataTable.fnTables(true), function(singleTable) {
    $(singleTable).dataTable().fnAdjustColumnSizing();
});  // And this just don't work! Don't know why...

Любые идеи или предложения по альтернативному способу это сделать?

EDIT: я ответила ниже как правильный ответ, но я обнаружил, что было неправильно в моем первоначальном подходе (и будет включать его, поскольку это может быть полезно другим): Это синтаксис функции $.each, которая должна получают 2 параметра, являясь первым индексом, а второй - самим элементом. Так:

$.each($.fn.dataTable.fnTables(true), function(idx, singleTable) {
    $(singleTable).dataTable().fnAdjustColumnSizing();
});  // This works!
Теги:
datatables

1 ответ

1
Лучший ответ

Документация API DataTables содержит пример, который может вам помочь:

var table = $.fn.dataTable.fnTables(true);
if ( table.length > 0 ) {
    $(table).dataTable().fnAdjustColumnSizing();
}
  • 0
    Да, это другой подход (выбор всех тегов "таблиц"), но он, безусловно, работает. В любом случае, я обнаружил, что было неправильно в моем первом подходе, и буду редактировать, чтобы включить это тоже. Благодарю.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню