DIV ohne ID bearbeiten?
tekki
- javascript
Hallo zusammen, kann mir das jemand erläutern?
Fehler: uncaught exception: [Exception... "Could not convert JavaScript argument arg 0 [nsIDOMHTMLBodyElement.appendChild]" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: http://localhost/mindmap/mindmap.js :: zeigdas :: line 37" data: no]
(Fehlerkonsole Firefox)
//div="xml";
function zeigdas(div){
xml=xmlhttp.responseText;
document.getElementById(div).innerHTML = xml;
neu = document.getElementById(div).firstChild.nodeValue;
document.getElementsByTagName('body')[0].appendChild(neu);
}
Sinn der Sache, ich bekomme vom Server ein Snippet-HTML, dieses ist durch ein DIV umschlossen. Das DIV hat zwar eine ID, diese weiß ich aber nicht. Dieses DIV soll nun innerhalb des <body></body> geschoben werden.
Dafakto soll aus folgendem:
<body>
<div id="schonda">Inhalt</div>
<div id=xml>
<div id="keineahnung">Neuer Inhalt</div>
</div>
</body>
das hier werden:
<body>
<div id="schonda">Inhalt</div>
<div id="keineahnung">Neuer Inhalt</div>
<div id=xml></div>
</body>
aber ohne die ID "keineahnung" zu kennen.
Bin ich auf m Holzweg?
aber ohne die ID "keineahnung" zu kennen.
Du weißt aber, dass es ein div-Element ist, welches das einzige Kind vom div-Element mit der id "xml" ist?
getElementsByTagName kennst du ja bereits - wo ist das Problem? :) alternativ kannst du auch mit childNodes arbeiten.
Hi,
Hallo zusammen, kann mir das jemand erläutern?
Zum navigieren im DOM, auch wenn man eine konkrete Element-ID vielleicht nicht kennt, hast du ja bereits eine Antwort.
Zu diesem Fehler:
Fehler: uncaught exception: [Exception... "Could not convert JavaScript argument arg 0 [nsIDOMHTMLBodyElement.appendChild]" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: http://localhost/mindmap/mindmap.js :: zeigdas :: line 37" data: no]
(Fehlerkonsole Firefox)
//div="xml";
function zeigdas(div){
xml=xmlhttp.responseText;
document.getElementById(div).innerHTML = xml;
neu = document.getElementById(div).firstChild.nodeValue;
document.getElementsByTagName('body')[0].appendChild(neu);
}
Selbst wenn es sich beim firstChild nicht um einen reinen Whitespace-Textknoten handeln sollte (was aber wahrscheinlich sein dürfte, wenn das XML-Dokument entsprechend „formatiert“ ist) – den [nodeValue](http://de.selfhtml.org/javascript/objekte/node.htm#node_value) per appendChild einfügen, geht ganz sicher nicht, denn der ist je nachdem, um was für eine Art von Node es sich beim firstChild handelt, entweder reiner Text (in String-Form), ein Attributwert, oder bei einem HTML-Element-Node null.
Das sind alles keine Werte, die sich per appendChild einfügen lassen - das verlangt einen „richtigen“ Elementknoten.
MfG ChrisB
--
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?