35 messaggi dal 11 aprile 2002
Mi potete dire se ho scritto del codice sensato oppure no? Funzionare funziona ma non c'è un modo più rapido per eliminare un nodo che posso selezionare tramite una query? Nell'esempio che riporto ho tolto la creazione dell'oggetto msxml2.DOMDocument.3.0 e alcune variabili non sono valorizzate, il linguaggio è VBscript)

SET accountNode = objXML.selectSingleNode ("root/ACCOUNT")
i = 0
find = false
for each userNode in accountNode.childnodes
IF userNode.getAttribute("ID") = PID THEN
find = true
exit for
ELSE
i=i+1
END IF
NEXT
IF find THEN
accountNode.removechild(accountNode.Childnodes(i))
objXMLDeluser.save userfilePos
ELSE
Response.Write "node not found"
END IF


Per chi come me sta imparando ad utilizzare il DOM 2.0 ho trovato un'interessante reference all'indirizzo

http://www.zvon.org/xxl/DOM2reference/Output/index.html

Sapete consigliarmi altre reference o guide fatte bene

Ciao
Amedeo
Modificato da blackd13 il 08 settembre 2005 04.50 -
Certo che esiste un modo più rapido per recuperare un nodo nella gerarchia xml in funzione del valore di un attributo: basta usare una query XPath. Nel tuo caso dovrebbe essere qualcosa di simile:

objXML.selectSingleNode ("root/ACCOUNT[@ID='" & PID & "']") 


Un'altra reference molto valida, specie per chi è agli inizi, è:

http://www.w3schools.com/

Poi c'è sempre MSDN!
Modificato da m.casati il 08 settembre 2005 09.42 -

Matteo Casati
GURU4.net
35 messaggi dal 11 aprile 2002
il problema non è nel selezionare un nodo, ma eliminarlo, se uso una query per selezionare un nodo poi come lo elimino? L'unico modo che conosco è utilizzare il metodo removechild ma questo metodo mi permette di selezionare un child passandogli il valore di un attributo?

Amedeo

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.