Path: csiph.com!weretis.net!feeder8.news.weretis.net!news.mb-net.net!open-news-network.org!.POSTED.178.197.201.110!not-for-mail From: Thomas 'PointedEars' Lahn Newsgroups: de.comp.lang.javascript Subject: Re:
wird aus erstellter Tabelle entfernt Date: Mon, 31 Oct 2022 01:07:43 +0100 Organization: PointedEars Software (PES) Lines: 80 Message-ID: <2147770.irdbgypaU6@PointedEars.de> References: Reply-To: Thomas 'PointedEars' Lahn Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8Bit Injection-Info: gwaiyur.mb-net.net; posting-host="178.197.201.110"; logging-data="2094442"; mail-complaints-to="abuse@open-news-network.org" User-Agent: KNode/4.14.10 Cancel-Lock: sha1:ss7ipTTQZDkA64BGaed+yHD0u3g= X-User-ID: U2FsdGVkX18lFa5X2jJ7aPwDLH7HCJQ6sni6fzZsjuaRoyWPgBaIlw== Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAGFBMVEXTxa4RFk5dUWANED8PFEfy7+MGBiW+n3ZNF/QuAAACaElEQVQ4jVXUwVOcMBQG8Dc7Rc4PUntdWV2uxjDpGaGeozOp1woar4jd5t/v9wLstMwsA/ntlxdCAgUc1hjTc9/JCZfGoo3wG3HdmdAWrIJRHe7GM/TmpY5VFefuVcAkkPbLIaN8rmPmjloyZxgyR3GuJ4K0AGtJ2htz8o7yqikm759fldQXaMpbDzjKAG+8v+AugVTOPO5DOjLvGtUYQwh0CPjnVMyGd+8/GfUB5nLKJDD2aLDh5HYyMDJGDwQIo2ZmZcKbowNmAdB/AzyFhrmF2MHRb0QJJfaAnwGB6orZhoykLzJtGwF/xpYxI1dswomiUj3gTuAIqCn/4C7cULwGNBtwMTk3Y4LfKB5YUaOKBKYtpplm7u0vip8tU1NWWyI/7XdcSuIDoMt6rVHMWT0DbjHPGqDqZVSa6zleLcUTcIKLoMv3ueJluALtAo9B302zPPlrtiVScRdCjXvVh3e3JpYa/jjkuC9N+LrBMlz/eAN4eQijX2EdLo6c5tGGHwLyHFtXk89dDGHwCVhG9T0S/j55AhRZgkMCmUQXJ49TnS1wnQDvw0eAh9ICeMmEFbCnPMFzjAvsWoEWEFdYEx+S0MoUZ1gT1wId8+AF3Bl2OoEu906AUHx5VLw/gXYg/x84loOah/2UYNrgiwSwGO7RfUzVBbx/kgpckumGOi6QirtD6gkLTitbnxNol47S2jVc2vsN5kPqaAHT8uUdAJM4v/DanjYOwmUjWznGfwB7sGtAtor5BgofDuzaRj4kSQAqDakTsKORa3Q3xKi3gE1fhl71KRMqrdZ2AWNNg/YOhQyrVBnb+i+nEg4bsDA+egAAAABJRU5ErkJggg== X-Face: %i>XG-yXR'\"2P/C_aO%~;2o~?g0pPKmbOw^=NT`tprDEf++D.m7"}HW6.#=U:?2GGctkL,f89@H46O$ASoW&?s}.k+&. es ist mir nicht möglich, einen Text, bestehend aus "text
weiteres" > zu einer erstellten Tabelle hinzu zu fügen. Die
werden niht > ausgewertet. Mein Code (Ausschnitt): > > out= "html text mit
inside"; Dort sollte mindestens var out = "html text mit
inside"; stehen. > var tableBody = document.createElement('TBODY'); > var tr = document.createElement('TR'); > tableBody.appendChild(tr); > var td = document.createElement('td'); > // var p = document.createElement('p'); > // p.innerHTML=out; > td.innerHTML=out; > //td.appendChild(p); > tr.appendChild(td); > > Ich habs mit p's, div's oder span's, innerText, innerHTML oder auch > createTextNode innerhalb des TD's versucht, welche ich dem td element > hinzufüge. Brachte alles keinen Erfolg. Aus dem obigen Quelltext geht hervor: Du hast zwar das td-Element dem TR- Element hinzugefügt, aber das TR-Element nicht dem TBODY-Element, und das TBODY-Element nicht einem table-Element. (Ansonsten ist das bis dahin fast¹ die richtige Vorgehensweise, denn sie vermeidet mehrfaches Rendering.) Einfacher formuliert: Du hast anscheinend vergessen, Deinen Unterbaum in den Dokumentbaum „einzuhängen“. Daher befindet sich Dein td-Element nicht im Dokumentbaum, sondern nur ein td-Elementobjekt im Heap. Wenn ich nach Ausführen Deines (originalen) Codes in der Chromium-Konsole ein table-Elementobjekt im Dokument mit “table” referenziere und table.appendChild(tableBody); aufrufe, dann funktioniert das bei mir (in einem beliebigen HTML5-Dokument – für den Test habe ich einen Wikipedia-Artikel benutzt) einwandfrei, d. h. es erscheint der Text mit dem Zeilenumbruch im Dokument (auch wenn das Markup so nicht empfohlen wird). Falls das nicht die Ursache ist, dann liegt es möglicherweise daran, dass Du syntaktisch fehlerhaftes Markup, oder Quelltext, der an dieser Stelle zu syntaktisch fehlerhaftem Markup führen würde, einzufügen versuchst. In XHTML sind “TBODY”- und “TR”-Elemente ungültig; es muss dort “tbody” und “tr” heissen. Ausserdem ist “
” ungültig (weil nicht geschlossen); es muss dort “
” heissen. In HTML, insbesondere HTML5, ist es nicht nötig (aber erlaubt), bei der Erzeugung des Elementobjekts den Elementtyp mit Grossbuchstaben zu schreiben. Konsistenz in der Schreibung ist empfehlenswert. Die innerHTML-Eigenschaft wird IIRC von einigen Layout-Engines im XHTML- Modus unterstützt, von anderen nicht. Daher ist auch mit dieser Eigenschaft ein XHTML-Problem möglich. Ausserdem ist bekannt, dass die Verwendung der innerHTML-Eigenschaft in Zusammenhang mit Tabellen zu Problemen führen kann. Ohne Angabe der Laufzeitumgebung (z. B.: welcher Browser, welche Browser- Version?) lässt sich nichts Genaueres dazu sagen. __________ ¹ Logisch wäre es in diesem Fall, das tr-Elementobjekt zuletzt zu erstellen. Der von Dir gewählte Weg ist nur dann sinnvoller, wenn Du auch testest, ob das Objekt erstellt werden konnte, bevor Du es benutzt. Diese Tests fe len aber bei Dir. -- PointedEars | Twitter: @PointedEars2 Please do not cc me. /Bitte keine Kopien per E-Mail.