D.R.: Probleme mit innerHTML

Beitrag lesen

Hallo,

stimmt, so hatte ich das nicht bedacht. Mein Opera zeigt im alert() allerdings den "falschen" Quelltext.

Gibt das alert den originalen HTML-String oder das innerHTML aus?

weder noch, ein:

document.getElementById("foo").innerHTML = "<table><td><tr>bar</td></tr>blah"

alert(document.getElementById("foo").innerHTML);


>   
> ergibt im Opera: <TABLE><TBODY><TR><TD><TR>bar</TR>blah  
  
Hm, dann speichert Opera die innerHTML Eigenschaft also…  
  

> der Firefox macht daraus valides html:  
> <table><tbody><tr><td></td></tr><tr>bar</tr>blah</tbody></table>  
  
…während Firefox sie verwirft und bei Abfrage neu generiert.  
  
Was passiert eigentlich, wenn du zwischendurch mit den DOM-Methoden etwas veränderst?  
  
Mich würde mal interessieren, was Opera aus:  
  
~~~javascript
document.getElementById("foo").innerHTML = "<table><td><tr>bar</td></tr>blah";  
document.getElementById("foo").getElementsByTagName("tr").appendChild(document.createElement("td")).appendChild(document.createTextNode("Zelle_2"));  
alert(document.getElementById("foo").innerHTML);

…macht.

mfg. Daniel