Avatar billede andersthingholm Nybegynder
28. juli 2004 - 15:24 Der er 8 kommentarer og
1 løsning

Opret childNode dynamisk

Hej,

jeg har denne xml:

<Node id="e6c14233-9b17-4f2e-87e6-976b8a146305" title="Håndvaskbatterier" childNodeCount="0"><Node id="e9853509-a7a8-45aa-84a2-127cdb873cc9" title="Berøringsfri" childNodeCount="0" /><Node id="54d72f74-bb9f-440a-9004-7e909e4f0ad3" title="Håndvaskbatterier" childNodeCount="0" /><Node id="10435f91-b5e2-40e8-a33d-10eadb1a668f" title="abc" childNodeCount="0" /><Node id="19f523ee-b1e9-4287-ab25-edd335de94b4" title="def" childNodeCount="0" /><Node id="3bd51d17-2278-4f73-a57e-35d9f4ca0cb4" title="asd" childNodeCount="0" /><Node id="ea867759-36bb-44f4-8e7a-650c08802a7c" title="pol" childNodeCount="0" /></Node>

Hvordan tilføjer jeg en node efter nodes med title="pol" ?

Den nye node skal ses sådan ud:

<Node id="1" title="2" childNodeCount="3" />
Avatar billede andersthingholm Nybegynder
28. juli 2004 - 15:25 #1
Den 'store' XML hedder myXML
Avatar billede andersthingholm Nybegynder
28. juli 2004 - 15:50 #2
Så denne:

<Node id="e6c14233-9b17-4f2e-87e6-976b8a146305" title="Håndvaskbatterier" childNodeCount="0"><Node id="e9853509-a7a8-45aa-84a2-127cdb873cc9" title="Berøringsfri" childNodeCount="0" /><Node id="54d72f74-bb9f-440a-9004-7e909e4f0ad3" title="Håndvaskbatterier" childNodeCount="0" /><Node id="10435f91-b5e2-40e8-a33d-10eadb1a668f" title="abc" childNodeCount="0" /><Node id="19f523ee-b1e9-4287-ab25-edd335de94b4" title="def" childNodeCount="0" /><Node id="3bd51d17-2278-4f73-a57e-35d9f4ca0cb4" title="asd" childNodeCount="0" /><Node id="ea867759-36bb-44f4-8e7a-650c08802a7c" title="pol" childNodeCount="0" /></Node>

skal ende med at se sådan ud:

<Node id="e6c14233-9b17-4f2e-87e6-976b8a146305" title="Håndvaskbatterier" childNodeCount="0"><Node id="e9853509-a7a8-45aa-84a2-127cdb873cc9" title="Berøringsfri" childNodeCount="0" /><Node id="54d72f74-bb9f-440a-9004-7e909e4f0ad3" title="Håndvaskbatterier" childNodeCount="0" /><Node id="10435f91-b5e2-40e8-a33d-10eadb1a668f" title="abc" childNodeCount="0" /><Node id="19f523ee-b1e9-4287-ab25-edd335de94b4" title="def" childNodeCount="0" /><Node id="3bd51d17-2278-4f73-a57e-35d9f4ca0cb4" title="asd" childNodeCount="0" /><Node id="ea867759-36bb-44f4-8e7a-650c08802a7c" title="pol" childNodeCount="0" /><Node id="1" title="2" childNodeCount="3" /></Node>
Avatar billede andersthingholm Nybegynder
28. juli 2004 - 16:26 #3
Denne kode:

variantXML = new XML(callBack.response.firstChild.firstChild.firstChild.childNodes[1].firstChild);
trace("myXML before: "+myXML);
trace(myXML.childNodes.length);
for (x=0; x<variantXML.firstChild.childNodes.length; x++) {
    trace("merging")
    myXML.appendChild(myXML.createElement("Node"));
}
trace("myXML after: "+myXML);
trace(myXML.childNodes.length);

Spytter dette ud:

myXML before: <Node id="e6c14233-9b17-4f2e-87e6-976b8a146305" title="Håndvaskbatterier" childNodeCount="0"><Node id="e9853509-a7a8-45aa-84a2-127cdb873cc9" title="Berøringsfri" childNodeCount="0" /><Node id="54d72f74-bb9f-440a-9004-7e909e4f0ad3" title="Håndvaskbatterier" childNodeCount="0" /><Node id="10435f91-b5e2-40e8-a33d-10eadb1a668f" title="abc" childNodeCount="0" /><Node id="19f523ee-b1e9-4287-ab25-edd335de94b4" title="def" childNodeCount="0" /><Node id="3bd51d17-2278-4f73-a57e-35d9f4ca0cb4" title="asd" childNodeCount="0" /><Node id="ea867759-36bb-44f4-8e7a-650c08802a7c" title="pol" childNodeCount="0" /><Node id="1d0c097f-d4bd-4828-a121-7444b9acb6c0" title="wolla" childNodeCount="0" /><Node id="342608a6-2f54-435c-9cb1-f7ac2054d34c" title="test" childNodeCount="0" /><Node id="dd396fc4-87d6-4672-a925-9eba3da1e26a" title="test2" childNodeCount="0" /><Node id="d02c1090-6eb7-4da7-88b9-2a6644aca856" title="test3" childNodeCount="0" /></Node>
10
merging
myXML after: <Node id="e6c14233-9b17-4f2e-87e6-976b8a146305" title="Håndvaskbatterier" childNodeCount="0"><Node id="e9853509-a7a8-45aa-84a2-127cdb873cc9" title="Berøringsfri" childNodeCount="0" /><Node id="54d72f74-bb9f-440a-9004-7e909e4f0ad3" title="Håndvaskbatterier" childNodeCount="0" /><Node id="10435f91-b5e2-40e8-a33d-10eadb1a668f" title="abc" childNodeCount="0" /><Node id="19f523ee-b1e9-4287-ab25-edd335de94b4" title="def" childNodeCount="0" /><Node id="3bd51d17-2278-4f73-a57e-35d9f4ca0cb4" title="asd" childNodeCount="0" /><Node id="ea867759-36bb-44f4-8e7a-650c08802a7c" title="pol" childNodeCount="0" /><Node id="1d0c097f-d4bd-4828-a121-7444b9acb6c0" title="wolla" childNodeCount="0" /><Node id="342608a6-2f54-435c-9cb1-f7ac2054d34c" title="test" childNodeCount="0" /><Node id="dd396fc4-87d6-4672-a925-9eba3da1e26a" title="test2" childNodeCount="0" /><Node id="d02c1090-6eb7-4da7-88b9-2a6644aca856" title="test3" childNodeCount="0" /></Node>
10
Avatar billede andersthingholm Nybegynder
28. juli 2004 - 16:27 #4
Burde der ikke være 11 childNodes i den nederste XML ?
Avatar billede barklund Nybegynder
28. juli 2004 - 23:38 #5
En childNode (XMLNode instans) har ingen createElement - kun rigtige XML instanser.

var myXML = new XML('<Node id="e6c14233-9b17-4f2e-87e6-976b8a146305" title="Håndvaskbatterier" childNodeCount="0"><Node id="e9853509-a7a8-45aa-84a2-127cdb873cc9" title="Berøringsfri" childNodeCount="0" /><Node id="54d72f74-bb9f-440a-9004-7e909e4f0ad3" title="Håndvaskbatterier" childNodeCount="0" /><Node id="10435f91-b5e2-40e8-a33d-10eadb1a668f" title="abc" childNodeCount="0" /><Node id="19f523ee-b1e9-4287-ab25-edd335de94b4" title="def" childNodeCount="0" /><Node id="3bd51d17-2278-4f73-a57e-35d9f4ca0cb4" title="asd" childNodeCount="0" /><Node id="ea867759-36bb-44f4-8e7a-650c08802a7c" title="pol" childNodeCount="0" /><Node id="1d0c097f-d4bd-4828-a121-7444b9acb6c0" title="wolla" childNodeCount="0" /><Node id="342608a6-2f54-435c-9cb1-f7ac2054d34c" title="test" childNodeCount="0" /><Node id="dd396fc4-87d6-4672-a925-9eba3da1e26a" title="test2" childNodeCount="0" /><Node id="d02c1090-6eb7-4da7-88b9-2a6644aca856" title="test3" childNodeCount="0" /></Node>');
var dummyXML = new XML();
var ekstra_node = dummyXML.createElement("Node");
ekstra_node.attributes.title = "pol";
myXML.firstChild.appendChild(ekstra_node);
trace(myXML);

Så virker det fint ;)

--
Morten Barklund
Avatar billede andersthingholm Nybegynder
29. juli 2004 - 08:56 #6
Som altid - smukt! Smider du et svar?
Avatar billede barklund Nybegynder
29. juli 2004 - 09:10 #7
Sure ;)
Avatar billede barklund Nybegynder
29. juli 2004 - 09:10 #8
For eksempel nu
Avatar billede barklund Nybegynder
29. juli 2004 - 11:23 #9
Tark for points
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester