Reputation: 646
I have the following XML, it's coming as string from a request. How can I get the capital value (Washington, DC Paris)?
<Country>
<USA>
<Capital>"Washington, D.C"</Capital>
</USA>
<France>
<Capital>"Paris"</Capital>
</France>
</Country>
Upvotes: 1
Views: 999
Reputation: 7175
Adding the answer with jquery. With jquery it can be easily done as,
var text = `<Country>
<USA>
<Capital>"Washington, D.C"</Capital>
</USA>
<France>
<Capital>"Paris"</Capital>
</France>
</Country>`;
$(text).find("Capital").each(function(){
console.log($(this).text());
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Upvotes: 1
Reputation: 178094
Use a DomParser :
var xml = `<Country>
<USA>
<Capital>"Washington, D.C"</Capital>
</USA>
<France>
<Capital>"Paris"</Capital>
</France>
</Country>`
var parser = new DOMParser();
var doc = parser.parseFromString(xml, "application/xml");
doc.querySelectorAll('Capital').forEach(
(cap) => console.log(cap.textContent));
Upvotes: 4