2013-10-03 2 views
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... 

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

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

$.each($.fn.dataTable.fnTables(true), function(idx, singleTable) { 
    $(singleTable).dataTable().fnAdjustColumnSizing(); 
}); // This works! 

ответ

1

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

var table = $.fn.dataTable.fnTables(true); 
if (table.length > 0) { 
    $(table).dataTable().fnAdjustColumnSizing(); 
} 
+0

Yey, это другой подход (выбор всех "таблиц" тегов), но это, безусловно, работает. Во всяком случае, я обнаружил, что было не так в моем первом подходе, и будет редактирование, чтобы включить это тоже. Благодарю. –

Смежные вопросы