Fetz: Alternative für innerHTML bei td-Tags

Beitrag lesen

Hallo!

Ich bin schon am Verzweifeln, weil es offensichtlich nicht möglich ist, einen Tag <td> per innerHTML dynamisch zu erzeugen..
Mein Quelltext sieht etwa so aus:

<html><head><title>Test</title>
<script language="javascript" type="text/javascript">
<!--
function newRow(){
 var main, newElement;
 main = document.getElementsByTagName('tr')[0];
if (main) {
    newElement = document.createElement('tr');
    newElement.innerHTML = '<td>Hallo</td><td>Ilia</td>';
    main.parentNode.insertBefore(newElement, main);
}
}
//-->
</script>
</head>
<body>
<table><tbody><tr><td>Hallo</td><td>Welt</td></tr></tbody></table>
<a href="#" onclick="newRow()">Test</a>
</body></html>

Löse ich jetz die Funktion newRow per Klick auf den Link aus, ändert sich die entscheidende Zeile in:

<table><tbody><tr>HalloIlia</tr><tr><td>Hallo</td><td>Welt</td></tr></tbody></table>

Ich muss, für das was ich vorhabe (Greasemonkey-Skript) ein neues Element <tr> erzeugen, damit das Seitenlayout nicht zerstört wird. Der Codeblock der eingefügt werden soll ist in wirklichkeit mehrere -zig Zeilen lang.
Gibt es andere Möglichkeiten?

Vorab vielen Dank für jegliche Art von Tipps.

Gruß, Fetz