Как я могу указать min-width
для столбца в DataTables?Как указать минимальную ширину столбца?
Я не могу использовать класс с className
, потому что ширина переменной. Недостаточно опции width
. Кажется, что нет опции style
.
Как я могу указать min-width
для столбца в DataTables?Как указать минимальную ширину столбца?
Я не могу использовать класс с className
, потому что ширина переменной. Недостаточно опции width
. Кажется, что нет опции style
.
Я бы порекомендовал использовать имя класса или несколько имен классов и columns.className
вариант сохранить правила CSS там, где они принадлежат - в файлах CSS.
Однако, если вы хотите назначить min-width
значение во время выполнения, вы можете использовать createdRow
возможность определить функцию обратного вызова для всякий раз, когда TR
элемент создан для тела таблицы.
var table = $('#example').DataTable({
'createdRow': function(row, data, dataIndex){
$('td:eq(3)', row).css('min-width', '200px');
}
});
См. this example для кода и демонстрации.
Нет ли лучшего обратного вызова, чем 'createdRow'? На самом деле его нужно запускать только один раз в заголовках. – mpen
@mpen, я согласен, что это нужно сделать один раз в заголовке, и вы можете использовать элемент 'initComplete' и target' th'. Однако в некоторых случаях (например, вертикальная прокрутка) DataTables создает отдельную таблицу только для заголовков, поэтому установка заголовка 'min-width' на заголовке нарушает макет и требует специальной обработки. Решение выше универсально. –
Значит, вы хотите назначить 'min-width' во время выполнения и не хотите использовать класс (ы) с предварительно заданной минимальной шириной, правильно? –
@ Gyrocode.com Правильно. Я не хочу создавать сотни классов CSS для каждого отдельного столбца на каждой отдельной странице. – mpen