Клонировать тр, но сохранить ширину - PullRequest
1 голос
/ 30 июня 2011

Я пытаюсь клонировать строку в таблице и вставить эту строку в пустую таблицу.Легко.

Но возможно ли сохранить исходную ширину ячеек в tr (которая может быть расширена за счет других ячеек в том же столбце)?

EDIT Только что понял, что я должен пройти через соответствующие ячейки после клона и синхронизировать ширину.Тем не менее, любопытно, есть ли более прямой путь ...

Ответы [ 2 ]

4 голосов
/ 30 июня 2011

Клонируйте строку, затем выполните итерации по дочерним элементам строки, задав ширину каждого дочернего элемента каждому дочернему элементу оригинала с соответствующим индексом.

var target = $('#target');
var target_children = target.children();

var clone = target.clone();

clone.children().width(function(i,val) {
    return target_children.eq(i).width();
});

$('<table>',{border:1}).append(clone).appendTo('body');

Пример: http://jsfiddle.net/z7hWh/

Я не уверен в поддержке браузером настройки ширины на <td>.

0 голосов
/ 30 июня 2011

Укажите строгие правила CSS.

Возможные ответы:

  • Определите, чтобы они были одинаковой ширины для каждой ячейки (вероятно, не то, что вам нужно) .
  • Использовать colgroups (рекомендуется) .
  • Не определять стили для тдно определите их в заголовке стола th.Очевидно, не работает, если у вас нет заголовка для ваших таблиц.
...