pprasadravi
asked on
Add Node to XmlDocument
Hi
I have the following structure
<Root>
<Person value='10'>
<DetailInfo value='abcd'>
</DetailInfo>
<Addresses>
</Addresses>
</Person>
<Person value='20'>
<DetailInfo value='abcd'>
</DetailInfo>
<Addresses>
</Addresses>
</Person>
<Person value='30'>
<DetailInfo value='abcd'>
</DetailInfo>
<Addresses>
</Addresses>
</Person>
</Root>
I want to add the Rate and Grade to DetailInfo node based on person value and detail info value and
need to add address node to addresses node based on person value.
<Address>
<State></State>
<City></City>
<Country></Country>
</Address>
If anyone have clue pls help me.
Thanks
Ravi
I have the following structure
<Root>
<Person value='10'>
<DetailInfo value='abcd'>
</DetailInfo>
<Addresses>
</Addresses>
</Person>
<Person value='20'>
<DetailInfo value='abcd'>
</DetailInfo>
<Addresses>
</Addresses>
</Person>
<Person value='30'>
<DetailInfo value='abcd'>
</DetailInfo>
<Addresses>
</Addresses>
</Person>
</Root>
I want to add the Rate and Grade to DetailInfo node based on person value and detail info value and
need to add address node to addresses node based on person value.
<Address>
<State></State>
<City></City>
<Country></Country>
</Address>
If anyone have clue pls help me.
Thanks
Ravi
Are you using .NET to do this? Please explain your situation. Cheers.
If you are using JavaScript,
var xmlDoc = new ActiveXObject("Microsoft.X MLDOM");
xmlDoc.async = false;
xmlDoc.load("test.xml");
personValue = 20;
detailValue = 'abcd';
var detailNode = xmlDoc.selectSingleNode("/ /DetailInf o[./Person [@value='" + personValue + "'] and ./DetailInfo[@value='" + detailValue + "']]");
var addressNode = detailNode.nextSibling;
var newNode = xmlDoc.createElement("Addr ess");
var newNode2 = xmlDoc.createElement("Stat e"); newNode2.text = "";
var newNode3 = xmlDoc.createElement("City "); newNode3.text = "";
var newNode4 = xmlDoc.createElement("Coun try"); newNode4.text = "";
newNode.appendChild(newNod e2);
newNode.appendChild(newNod e3);
newNode.appendChild(newNod e4);
addressNode.appendChild(ne wNode);
The above strip of code selects a DetailInfo tag based on the given person value and detailinfo value, then selects the next sibling of the tag (which is the addresses tag) and appends the newly created elements to it.
Hope this helps.
Cheers,
Sathish
var xmlDoc = new ActiveXObject("Microsoft.X
xmlDoc.async = false;
xmlDoc.load("test.xml");
personValue = 20;
detailValue = 'abcd';
var detailNode = xmlDoc.selectSingleNode("/
var addressNode = detailNode.nextSibling;
var newNode = xmlDoc.createElement("Addr
var newNode2 = xmlDoc.createElement("Stat
var newNode3 = xmlDoc.createElement("City
var newNode4 = xmlDoc.createElement("Coun
newNode.appendChild(newNod
newNode.appendChild(newNod
newNode.appendChild(newNod
addressNode.appendChild(ne
The above strip of code selects a DetailInfo tag based on the given person value and detailinfo value, then selects the next sibling of the tag (which is the addresses tag) and appends the newly created elements to it.
Hope this helps.
Cheers,
Sathish
ASKER
i am sorry we are using asp.net and c#.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.