fwolle: IE Rendert dynamisch erstellte Tabelle nicht

Hallo,
ich soll für meine Firma eine web Anwendung erstellen, die via AJAX sich verte aus der Datenbank liest und in eine Tabelle schreibt.

so Weit so gut, AJAX läuft, daten kommen auch an, nur die Tabelle ist nicht im IE sichtbar (Safari, Opera, Firefox und Chrome zeigen sie an). Also habe ich die Datei kopiert und aufs Wesentliche reduziert (nur das erstellen der Tabelle sonst nichts)

  
<html>  
<head>  
	<title>JavaScript Test</title>  
	<script type="text/javascript">  
		var nTable=document.createElement("table");  
		  
		var nTr=document.createElement("tr");  
		  
		var nTd1=document.createElement("td");  
		nTd1.appendChild(document.createTextNode("test1"));  
		  
		var nTd2=document.createElement("td");  
		nTd2.appendChild(document.createTextNode("test2"));  
  
		var nTd3=document.createElement("td");  
		nTd3.appendChild(document.createTextNode("test3"));  
		  
		nTr.appendChild(nTd1);  
		nTr.appendChild(nTd2);  
		nTr.appendChild(nTd3);  
		  
		nTable.appendChild(nTr);  
		  
	</script>  
</head>  
<body>  
<div id="test"></div>  
<script type="text/javascript">  
document.getElementById('test').appendChild(nTable);  
</script>  
</body>  
</html>  

In allen Browsern sichtbar, nur der IE macht (wie immer) Zicken und zeigt sie nicht an. Ich gucke mit der Developer Toolbar des IE drauf und siehe da:
im DOM baum ist die Tabelle zwar verzeichnet, sie hat auch daten, nur sie wird einfach nicht gerendert. Warum nicht? was mache ich falsch??

Bin für jede Hilfe Dankbar.

fwolle

  1. hi,

    In allen Browsern sichtbar, nur der IE macht (wie immer) Zicken und zeigt sie nicht an. Ich gucke mit der Developer Toolbar des IE drauf und siehe da:
    im DOM baum ist die Tabelle zwar verzeichnet, sie hat auch daten, nur sie wird einfach nicht gerendert. Warum nicht? was mache ich falsch??

    könnte vielleicht damit zu tun haben

    How to Build Tables Dynamically

    "In fact, as you will learn later in this article, you must create a tBody when using the DOM to create a table."

    1. hi,
      »» In allen Browsern sichtbar, nur der IE macht (wie immer) Zicken und zeigt sie nicht an. Ich gucke mit der Developer Toolbar des IE drauf und siehe da:
      »» im DOM baum ist die Tabelle zwar verzeichnet, sie hat auch daten, nur sie wird einfach nicht gerendert. Warum nicht? was mache ich falsch??

      könnte vielleicht damit zu tun haben

      How to Build Tables Dynamically

      "In fact, as you will learn later in this article, you must create a tBody when using the DOM to create a table."

      ... was für ein mist...
      Schreibt man die Tabelle ohne TBody als HTML ist der IE dabei,
      lässt man ihn weg und versuchts mit DOM....

      Oh mann -.-

      Aber hey jezt gehts, Danke für die verdammt schnelle Antwort.

      und für leute mit ähnlichen Problemen hier der richtige Code:

        
      <html>  
      <head>  
      	<title>JavaScript Test</title>  
      	<script type="text/javascript">  
      		var nTable=document.createElement("table");  
      		var nTbody=document.createElement("tbody");  
      		  
      		var nTr=document.createElement("tr");  
      		  
      		var nTd1=document.createElement("td");  
      		nTd1.appendChild(document.createTextNode("test1"));  
      		  
      		var nTd2=document.createElement("td");  
      		nTd2.appendChild(document.createTextNode("test2"));  
        
      		var nTd3=document.createElement("td");  
      		nTd3.appendChild(document.createTextNode("test3"));  
      		  
      		nTr.appendChild(nTd1);  
      		nTr.appendChild(nTd2);  
      		nTr.appendChild(nTd3);  
      		  
      		nTbody.appendChild(nTr);  
      		nTable.appendChild(nTbody);  
      		  
      	</script>  
      </head>  
      <body>  
      <div id="test"></div>  
      <script type="text/javascript">  
      document.getElementById('test').appendChild(nTable);  
      </script>  
      </body>  
      </html>