Solved

XML/ASP/VBS Identifying a Value of a Child node

Posted on 2009-04-14
2
399 Views
Last Modified: 2012-05-06
Hi Guys,

Can someone please help me understand the following:

I get a SOAP request back from a 3rd party and I need to get the following info:

EmailAddress, Name, and the [SubscriberCustomField] MemberNo.  I can get the first two with the attached code however I don't know the syntax to search through the node "SubscriberCustomField" and find the <value> where the <key> = "MemberNo".

Can someone point me in the right direction please?

Cheers!
JetGrrrL


Set objSubs = XmlDoc.selectNodes("//Subscriber")
For Each objSubInfo In objSubs
   Set colInfo = objSubInfo.childNodes
   Response.write "Email:", colInfo.Item(0).Text
   Response.write "Name:", colInfo.Item(1).Text
Next
 
 
<Subscribers.GetBouncedResponse xmlns="http://sadsdsddsfsdf">
	<Subscribers.GetBouncedResult>
	<Subscriber>
		<EmailAddress>random@here.com</EmailAddress>
		<Name>Random</Name>
		<Date>21-12-2009</Date>
		<State>NSW</State>
		<SubscriberCustomField>
			<Key>MemberNo</Key>
			<Value>123456</Value>
			<Key>MemberType</Key>
			<Value>Green</Value>
		</SubscriberCustomField>
	</Subscriber>
	<Subscriber>
		<EmailAddress>random@here.com.au</EmailAddress>
		<Name>Random3</Name>
		<Date>21-11-2009</Date>
		<State>NSW</State>
		<SubscriberCustomField>
			<Key>MemberNo</Key>
			<Value></Value>
			<Key>MemberType</Key>
			<Value></Value>
		</SubscriberCustomField>
	</Subscriber>
	</Subscribers.GetBouncedResult>
</Subscribers.GetBouncedResponse>

Open in new window

0
Comment
Question by:jetgrrrl
2 Comments
 
LVL 28

Accepted Solution

by:
sybe earned 500 total points
ID: 24145002
Basically it works the same all the way. Each node can have childnodes, and you can use the same way of coding to loop through it.


Set oSubscriberNodes =  = XmlDoc.selectNodes("//Subscriber")
For each oSingleSubscriberNode in oSubscriberNodes
    Response.write "Email: " & oSingleSubscriberNode.selectSingleNode("EmailAddress").Text & "<br>"
    Response.write "Name: " & oSingleSubscriberNode.selectSingleNode("Name").Text & "<br>"
    Response.write "Date: " & oSingleSubscriberNode.selectSingleNode("Date").Text & "<br>"
    For each oCustomFieldNode In oSingleSubscriberNode.selectSingleNode("SubscriberCustomField")
        Response.write "Customfield, Name = " oCustomFieldNode.Name & ", Value: " & oCustomFieldNode.Name & "<br>"
    Next
Next

Open in new window

0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
XML XSL Message 3 22
problems with mysql ODBC Connector and vbscript 4 31
Select only the top record in a left join 13 35
Multiflying 2 Input Text On a Table 7 19
This is pretty cool.  The purpose of this VB Script is to help you document where JAR (Java ARchive) files and specifically java class files are located so that you can address issues seen with a client or that you can speak intelligently with a dev…
The Confluence of Individual Knowledge and the Collective Intelligence At this writing (summer 2013) the term API (http://dictionary.reference.com/browse/API?s=t) has made its way into the popular lexicon of the English language.  A few years ago, …
Established in 1997, Technology Architects has become one of the most reputable technology solutions companies in the country. TA have been providing businesses with cost effective state-of-the-art solutions and unparalleled service that is designed…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question