<table id="table1" border="1">
<tr id="tr11"><td id="td11">11</td><td id="td12">12</td>
<tr id="tr21"><td id="td21">21</td><td id="td22">22</td>
</table>
var tr11 = document.getElementById('tr11'); //берем первую строку
var table = document.getElementById('table1');
var tr31 = document.createElement('tr'); //создаем еще строку
var td31 = document.createElement('td'); td31.innerHTML = '31'; //создаем столбец
var td32 = document.createElement('td'); td32.innerHTML = '32'; //создаем еще столбец
//tr11.appendChild(td31); так можно добавить в первую строку столбец
tr31.appendChild(td31); //кладем в новосозданную строку первый новосозданный столбец
tr31.appendChild(td32); //кладем в новосозданную строку второй новосозданный столбец
table.appendChild(tr31); //кладем в таблицу новосозданную строку (последней)
table.insertBefore(tr31, tr11) увы не работает в FF, поэтому в других даже не стал смотреть.