Veröffentlicht 25. August 200816 j Hallo ich versuche schon die ganze Zeit verzweifelt daten aus einem Array in ein TD dynamisch zu übergeben. Krieg es aber einfach nicht hin. Vielleicht kann mir jemand weiterhelfen. function TabData(){ var obj = { "fische": [ {"product": "Lachs", "price": "4,73"}, {"product": "Hering", "price": "6,33"}, {"product": "Rochen", "price": "3,99"}, {"product": "Makrele", "price": "8,99"}, {"product": "Aal", "price": "4,99"} ], "pflanzen": [ {"product": "Tulpe", "price": "7,73"}, {"product": "Rose", "price": "9,22"}, {"product": "Geranie", "price": "9999,42"} ] }; var datenpaket=(obj["fische"]); for(var i=0; i<datenpaket.length; i++){ datenpaket.product; datenpaket.price; var dataTableObj = document.getElementById("dataTable"); //TR-Element erstellen var trObj = document.createElement("tr"); //TD-Element erstellen für product var tdObj = document.createElement("td"); tdObj.innerHTML = datenpaket.product; //TD zu TR hinzufügen trObj.appendChild(tdObj); //TD-Element erstellen für price tdObj = document.createElement("td"); tdObj.innerHTML = datenpaket.price; //TD zu TR hinzufügen trObj.appendChild(tdObj); //Jetzt das fertige TR-Element mit seinen TD's in den Table hängen dataTableObj.appendChild(trObj); } } </script> <body onload="TabData()"> <table id="dataTable" style="border:2px solid silver;width:200px;height:600px;background-color:gray;"> <!-- hier werden dynamisch die Daten eingelesen --> </table> </body> MFG
25. August 200816 j Was ist das Problem? "Geht nicht" ist keine aussagekräftige Formulierung des Problems und den Code posten, damit sich jemand durchwühlt ist sicherlich nicht gedacht. Ebenso kannst Du bitte die Code-Tags verwenden. Bitte dies hier einmal lesen Wie man Fragen richtig stellt: eine Anleitung wie man Fragen erfolgreich in Usenet, Mailing Listen und Webforen stellt. und dann bitte das Problem konkret beschreiben Phil
25. August 200816 j //TD-Element erstellen für product var tdObj = document.createElement("td"); tdObj.innerHTML = datenpaket[i].product; Denke mal das wird dein Problem sein. Im DOM hat ein Element nicht einfach ein innerHTML (was ansich ja nicht standardkonform ist, dennoch von eigentlich allen Brwosern unterstützt wird), sondern unter dem Element folgt ein Textnode, der dann den Inhalt darstellt. (Siehe z.B. den DOM-Explorer (?) im Firefox. Damit kannst du dir schön die DOM-Struktur ansehen) Ansonsten stimm ich flashpixx aber voll zu, mir war wohl grade langweilig
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.