Hallo,
ich habe ein root-Element aus einem Document.
dann habe ich eine Schleife, die wie folgt aussieht
generateElement erzeugt ein XML das die folgende Struktur hat:
[XML]<one value="a">
<two value="d">
<three value="g">
<four value="j">
<five value="k">
<six value="l">
</three>
</two>
</one>[/XML]
mit root.appendChild hab ich das Problem, dass jedes dieser Elemente tatsächlich ins doc eingefügt wird; in Wirklichkeit will ich aber nur jene Elemente einfügen, die tatsächlich auch neu sind; d.h das Ganze soll so aussehen:
[XML]<root>
<one value="a">
<two value="d">
<three value="g">
<four value="j">
<five value="k">
<six value="l">
</three>
</two>
<two value="e">
<three value="g">
<four value="j">
<five value="k">
<six value="l">
</three>
<three value="h">
<four value="j">
<five value="k">
<six value="l">
</three>
</two>
</one>
<one value="b">
<two value="d">
<three value="g">
<four value="j">
<five value="k">
<six value="l">
</three>
</two>
</one>
</root>[/XML]
seht ihr worum es geht?
aufgrund des Value-Attributes einer Node soll die appendChild-Methode entscheiden, ob eine node bereits vorhanden ist, oder nicht.
wenn sie schon vorhanden ist, sollen die children erst ab da eingefügt werden, wo sie neu sind.
gibt es dafür schon irgendeine Funktion die das kann?
(document.adoptChild / document.importChild scheinen das nicht zu bewerkstelligen).
wenn es noch keine Funktion gibt: wie kann ich sowas sinnvoll schreiben?
danke für eure tipps!
mfg, guni
ich habe ein root-Element aus einem Document.
dann habe ich eine Schleife, die wie folgt aussieht
Java:
while bedingung {
Element e = generateElement();
root.appendChild(e);
}
[XML]<one value="a">
<two value="d">
<three value="g">
<four value="j">
<five value="k">
<six value="l">
</three>
</two>
</one>[/XML]
mit root.appendChild hab ich das Problem, dass jedes dieser Elemente tatsächlich ins doc eingefügt wird; in Wirklichkeit will ich aber nur jene Elemente einfügen, die tatsächlich auch neu sind; d.h das Ganze soll so aussehen:
[XML]<root>
<one value="a">
<two value="d">
<three value="g">
<four value="j">
<five value="k">
<six value="l">
</three>
</two>
<two value="e">
<three value="g">
<four value="j">
<five value="k">
<six value="l">
</three>
<three value="h">
<four value="j">
<five value="k">
<six value="l">
</three>
</two>
</one>
<one value="b">
<two value="d">
<three value="g">
<four value="j">
<five value="k">
<six value="l">
</three>
</two>
</one>
</root>[/XML]
seht ihr worum es geht?
aufgrund des Value-Attributes einer Node soll die appendChild-Methode entscheiden, ob eine node bereits vorhanden ist, oder nicht.
wenn sie schon vorhanden ist, sollen die children erst ab da eingefügt werden, wo sie neu sind.
gibt es dafür schon irgendeine Funktion die das kann?
(document.adoptChild / document.importChild scheinen das nicht zu bewerkstelligen).
wenn es noch keine Funktion gibt: wie kann ich sowas sinnvoll schreiben?
danke für eure tipps!
mfg, guni