Создать строку таблицы между двумя строками с помощью javascript?

#javascript #html

#javascript #HTML

Вопрос:

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

  if (!document.getElementsByTagName) return;
         tabBody=document.getElementsByTagName("TBODY").item(0);

         row=document.createElement("TR");

         cell1 = document.createElement("TD");

         textnode1=document.createTextNode('');

         cell1.appendChild(textnode1);


         row.appendChild(cell1);

         tabBody.appendChild(row);


}
  

На самом деле я хочу создать ее как среднюю строку. В настоящее время моя таблица содержит 2 строки.

Ответ №1:

Таблица предоставляет свои собственные методы, которые можно использовать для ее изменения:

 - insertRow 
- deleteRow
  

Строка таблицы предоставляет метод, который можно использовать для вставки новой ячейки:
insertCell .
Вот несколько основных примеров.

Ответ №2:

Элементы таблицы имеют свои собственные методы для манипулирования ими, поэтому вы можете использовать .insertRow() метод и .insertCell()

 var table = document.getElementsByTagName('table')[0];
var middleRow = table.insertRow( Math.floor( table.rows.length / 2 ) );
var cell1 = middleRow.insertCell(0);
var textnode1=document.createTextNode('');
cell1.appendChild( textnode1 );
  

демо http://jsfiddle.net/gaby/yA7Rg

Ответ №3:

попробуйте использовать insertBefore; начните с вычисления индекса средней строки, затем insertBefore следующей строки, чтобы получить строку с правильным индексом

 tabBody.insertBefore(row, tabBody.childNodes[0].nextSibling);