2014-09-02 4 views
0

Хорошо, поэтому я работаю над страницей, которая позволяет пользователям выбирать столбцы в таблице, которую они хотят видеть. Некоторые колонки должны быть шире, чем другие из-за контента, поэтому мне нужно дать им вес.jquery - изменить размер столбцов таблицы на основе видимости и веса

Я могу скрыть каждый столбец достаточно легко, но после скрытия каждого столбца мне нужно изменить его размер.

Так скажем, у меня есть это:

var columns = { 
    //column name: weight 
    id: 1, 
    firstName: 2, 
    lastName: 3, 
    email: 3, 
    address: 4 
} 

Я мог бы петлю через и определить, какие из них скрыто довольно легко с JQuery, но как бы я подсчитать, какая ширину применить к каждому колонку?

ответ

1

Если вы можете сделать процентную ширину, просто добавьте вес всех видимых столбцов и используйте эту формулу - столбец [i] .css («ширина», ((вес столбца)/(общий вес всех видимых столбцов) * 100) + "%");

+0

Я понял, что вы имели в виду общий ** вес ** всех столбцов, и это, похоже, сработало. Большое спасибо! – Rob

+0

О да, lolz. Будет обновляться. – Reimius

1

CSS может установить ширину в процентах, чтобы вы могли установить ее (вес/сумма_из_выражения_высоты) * 100%. Или, если вы планируете определенную общую ширину таблицы, несколько процентов на нее сами и установите ширину в пикселях (или любой другой).