il resto lo fai tu... avevo sbattuto la testa contro l'aggiungere righe e celle alle tabelle qualche tempo fa... è la cosa è un po' artificiosa in IE, ti posto il codice di esempio a cui ero pervenuto.
Putroppo fa a pugni almeno con Opera (su IE e FF va).codice:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <script language="javascript" type="text/javascript"> <!-- function addrows(r) { oldHTML = document.getElementById('tabella').getElementsByTagName('tbody')[0].innerHTML; trs = document.getElementById('tabella').getElementsByTagName('tr').length; tds = document.getElementById('tabella').getElementsByTagName('tr')[0].getElementsByTagName('td').length; if (!document.all) { newHTML = ""; for (var i = 0; i < r; i++) { newHTML += "<tr>"; for (var j = 0; j < tds; j++) { newHTML +="\n <td>"+(1+trs+i)*(j+1)+"</td>"; } newHTML += "</tr>\n"; wholeHTML = oldHTML+newHTML; document.getElementById('tabella').getElementsByTagName('tbody')[0].innerHTML = wholeHTML; } } else { //Era Internet Explorer for (var i=0; i < r; i++) { var row; row = document.getElementById('tabella').insertRow(); for (var j=0; j < tds; j++) { var td; td = row.insertCell(); td.innerHTML = (1+trs+i)*(1+j); } } } } --> </script> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Tabella</title> </head> <body> <table id="tabella" style="width: 200px; border: 1px solid #000000;"> <tr> <td>1</td> <td>2</td> <td>3</td> </tr> <tr> <td>2</td> <td>4</td> <td>6</td> </tr> <tr> <td>3</td> <td>6</td> <td>9</td> </tr> </table> Aggiungi righe:<input type="text" id="righe" value="Numero righe"><input type="button" value="Aggiungi righe" onClick="addrows(document.getElementById('righe').value);"> </body> </html>