Вы не добавляете в «теги», вы добавляете к элементам.
В общем случае вы создаете элементы через document.createElement
(или назначая строку, содержащую HTML, для свойства существующего элемента innerHTML
).
Вы добавляете элементы в качестве детей других элементов, используя appendChild
или insertBefore
.
Так, например, вот как вы могли бы добавить строку, содержащую две ячейки таблицы перед тем в id="row2"
в вашей таблице:
var newRow = document.createElement('tr');
newRow.appendChild(document.createElement('td')); // The first cell
newRow.appendChild(document.createElement('td')); // The second cell
var row2 = document.getElementById("row2");
row2.parentNode.insertBefore(newRow, row2); // Insert it
Однако, как Heitor points out, для таблиц существуют специальные методы, которые можно использовать вместо которые являются немного менее многословным:
Вот код выше, используя insertCell
:
var newRow = document.createElement('tr');
newRow.insertCell(-1); // The first cell
newRow.insertCell(-1); // The second cell
var row2 = document.getElementById("row2");
row2.parentNode.insertBefore(newRow, row2); // Insert it
Мы могли также использовать insertRow
:
var row2 = document.getElementById("row2"); // Get existing row
var newRow = row2.parentNode.insertRow(row2.rowIndex); // Create and insert new row
newRow.insertCell(); // The first cell
newRow.insertCell(); // The second cell
... но тогда мы будем вносить изменения к отображаемому DOM несколько раз (добавив пустую строку, а затем добавив ячейку, а затем добавив другую ячейку), которой лучше избежать, если это возможно. В первых двух примерах мы создали строку и добавили ее ячейки, прежде чем добавить эту структуру в DOM, выполнив один из живых манипуляций DOM.
DOM-API, может быть многословным и немного неудобно, и реализации его может варьироваться в зависимости немного браузера в браузер (хотя все вышесказанное является надежным). Вы, очевидно, можете использовать, но вы также можете использовать любую из нескольких хороших библиотек JavaScript для DOM, чтобы получить информацию о совместимости с браузером, и получить много полезной полезной функции.
Вы еще что-нибудь пробовали? –
хорошо для начала, он написал неверный JSON '{{" name ":" Jim "," id ":" 456 "}}': P –
@AnilShanbhag: Это не JSON. Это * неверно. :-) Контекст - это король, это инициализатор объекта JavaScript (или это было бы так или иначе), поскольку он находится в коде JavaScript. –