Вставка строк в сортируемую таблицу кикстарта

Как я могу вставить много строк в таблицу сортировки кикстарта? Я устанавливаю <tr>...</tr> код с методом jQuery appendTo к столу (вот так: $("<tr><td>{0}</td><td>{1}</td><td>{2}</td></tr>".format(a, b, c)).appendTo("#items-tbody");), то я не могу отсортировать любой столбец. У меня есть ошибки, такие как:

TypeError: i is undefined - kickstart.js (line 288) в Firefox, или

Uncaught TypeError: Cannot call method 'match' of undefined в хроме.

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

1 ответ

Ваша точная ошибка вызвана тем, что вы не установили атрибут value для вставленных символов. Kickstart использует TinySort для сортировки, которая, очевидно, использует значение attr.

то есть:

var tbody = $(SELECTOR_FOR_TBODY);
tbody.append("<tr id='ROW_FOR_NEW_DATA'/>");
var tr = $("#ROW_FOR_NEW_DATA");`
tr.append("<td value='MyNewValueForTD1'>MyValueForTD1</td>");
tr.append("<td value='MyNewValueForTD2'>MyValueForTD2</td>");

Чтобы сохранить правильное форматирование полосатых строк (и, возможно, некоторые другие варианты поведения), вы также должны сделать что-то подобное после добавления всех новых строк:

$('table').find('tr:even').addClass('alt');
$('table').find('tr:first-child').addClass('first');
$('table').find('tr:last-child').addClass('last');
Другие вопросы по тегам