<tbody> bei innerHTML-setzen umgehbar?
waldemar
- javascript
0 Cheatah
hello
ich habe mich gerade gefreut, dass man document.all.innerHTML auch mozilla kompatibel hinkriegt, wenn ich nach der DOM syntax schreibe. doch natürlich stosse ich hier wieder auf einen unterschied zwischen den browsern, wenn ich nämlich einem element
<table id="tableid"></table>
einen inhalt verpassen möchte, so dachte ich mir, wäre folgendes in javascript prima:
var trelement = document.createElement("tr");
var tdelement = document.createElement("td");
var inhalt = document.createTextNode("inhalt");
tdelement.appendChild( inhalt );
trelement.appendChild( tdelement );
document.getElementById("tableid").appendChild( trelement );
soweit alles super, nur zeigt mir mein IE6 nichts. mozilla dagegen zeigt mir das, was ich sehen wollte. nun habe ich mir das innerHTML im IE mal ausgeben lassen (vor dem anhängen der elemente) und stiess auf ein <tbody>, welches ich eigentlich überhaupt nicht haben will.
das ist jetzt auch mein einziges problem, wenn ich html mit tbody einfüge interpretiert mozilla auch nach meinen wünschen, nur hat dies doch mein interesse geweckt und ich wäre äusserst dankbar, wenn mir jemand einen tip geben könnte, wie ich das tbody element umgehen kann.
waldemar
Hi,
nun habe ich mir das innerHTML im IE mal ausgeben lassen (vor dem anhängen der elemente) und stiess auf ein <tbody>, welches ich eigentlich überhaupt nicht haben will.
doch, das willst Du haben - das ist nämlich genau das, wo die <tr>s drin sind. Wenn Du es nicht explizit angibst, ist es implizit. Da führt nichts drumherum.
[...] wenn mir jemand einen tip geben könnte, wie ich das tbody element umgehen kann.
Nur indem Du auf Tabellen verzichtest. Jedes <table>-Element hat mindestens ein <tbody>-Element, dessen Start- und Endtag optional ist.
Cheatah