16. oktober 2002 - 12:08Der er
9 kommentarer og 1 løsning
Node exists
Jeg vil gerne tilføje en childnode til en specifik node i et xml dokument, men det er ikke sikkert at denne node eksisterer. Hvordan sikrer jeg mig at noden eksisterer ?
Det er serverside VBScript/ASP på en 2000 Server. '// Her er der ikke den node der skal tilføjes til: <?xml version="1.0"?> <pagetamplate> <dnaspot> <id>12</id> </dnaspot> </pagetemplate>
'// Her er der oprettet noden med en childnode <?xml version="1.0"?> <pagetamplate> <dnaspot> <id>12</id> </dnaspot> <pageelements> <element> <id>1388</id> <leftspot>12.5</leftspot> </element> </pageelements> </pagetemplate>
Hvordan kontrollerer jeg om <pageelements> eksisterer før end jeg opretter det og tilføjer et child ?
Hmm, nu har jeg ændret lidt i det, sådan at der ikke eksisterer en <pagelements>, istedet for ligger de enkelte pageelement (som nu hedder DNAelement) direkte som childs til "pagetemplate".
Hvordan kontrollerer jeg om der findes et "dnaelement" hvor at <id> = nn OG <leftspot> = XX ??
Synes godt om
Slettet bruger
16. oktober 2002 - 12:40#2
Du gør f.eks. sådan:
Set oPageElements = oXML.selectSingleNode("/pagetemplate/pageelements") If (oPageElements) Then oPageElements.appendChild(...) Endif
'// Her er der oprettet noden med en childnode <?xml version="1.0"?> <pagetemplate> <!-- pagetamplate til pagetemplate --> <dnaspot> <id>12</id> </dnaspot> <pageelements> <element> <id>1388</id> <leftspot>12.5</leftspot> </element> </pageelements> </pagetemplate>
Set oNode = Set oPageElements = oXML.selectSingleNode("//dnaelement[id='" & NN & "'][leftspot='" & XX & '"]") If (oPageElements) Then oPageElements.appendChild(...) Endif
(Husk lige at sætte NN og XX til noget brugbart, ikke.. :-) /CS
Og hvis jeg så vil slette den før jeg opretter den igen ? Set oNode = Set oPageElements = oXML.selectSingleNode("//dnaelement[id='" & NN & "'][leftspot='" & XX & '"]") If (oPageElements) Then oNode.removeChild(oPageElements) Endif
??
Synes godt om
Slettet bruger
16. oktober 2002 - 20:44#9
Noget i denne stil (ikke testet):
Set oPageElements = oXML.selectSingleNode("//dnaelement[id='" & NN & "'][leftspot='" & XX & '"]") If (oPageElements) Then Set oParent = oPageElements.parentNode Set oNode = oParent.removeChild(oPageElements) ' Lav ændringer til oNode her...
oParent.appendChild(oNode) ' Sæt tilbage i dokumentet Endif
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.