Добавление строк таблицы с использованием jQuery в Firefox - PullRequest
0 голосов
/ 05 июля 2011

Я пытаюсь добавить строки в свой репитер, используя jQuery, используя скрипт ниже. Он отлично работает в IE, но не в Firefox, Chrome и Safari.

похоже на проблему с использованием outerHTML. Кто-нибудь может мне помочь?

function AddRowToTable(table) {
    var newRow1 = $(table.rows[table.rows.length - 2].outerHTML);
    var myRow = $(table.rows[table.rows.length - 2]);
    $(myRow).after(newRow1);
}

Ответы [ 2 ]

1 голос
/ 05 июля 2011

outerHTML является проприетарным стандартом, не поддерживаемым другими браузерами, кроме IE.В любом случае, это плохая идея - вы почти всегда должны просто использовать DOM-узлы и клонировать их при необходимости.К счастью, jQuery делает это очень легко для вас.

function AddRowToTable(table) {
    var $table = $(table);
    var $oldRow = $table.find('tr').eq(-2); // get the second last row
    var $newRow = $oldRow.clone(true); // clone the node
    $oldRow.after($newRow); // insert the new row after the old row
}

См .:

0 голосов
/ 05 июля 2011

Возможный дубликат Добавить строку таблицы в jQuery

Решение было

$('#myTable tr:last').after('<tr>...</tr><tr>...</tr>');

Вы, вероятно, можете изменить это, чтобы быть полезным в вашем случае ...

...