我的javascript代码中有以下XML对象。现在我想获取<d:Attachment>
标记的内容并存储在单独的变量中。我该怎么做?
<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"
xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"
xml:base="https://fioriq.gerdau.com:443/sap/opu/odata/sap/ZVS_GLNSCNF_GW_SRV/">
<id>…</id>
<title type="text">Text Title</title>
<updated>2017-05-31T19:09:36Z</updated>
<category term="ZVS_GLNSCNF_GW_SRV.Form"
scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme">
</category>
<link href="FormSet(Scnfid='1',Formid='1')" rel="self" title="Form"></link>
<content type="image/jpeg" src="FormSet(Scnfid='1',Formid='1')/$value"></content>
<m:properties>
<d:Attachment></d:Attachment>
<d:Imagebase64></d:Imagebase64>
<d:MimeType>image/jpeg</d:MimeType>
<d:Scnfid>1</d:Scnfid>
<d:Formid>1</d:Formid>
<d:Description></d:Description>
<d:Owner></d:Owner>
<d:Attachmentid>1</d:Attachmentid>
</m:properties>
</entry>
这是我的对象
var xmlStr = jQuery.parseXML(oEvent.getParameters().files[0].responseRaw);
我试过这个
var attachment = xmlStr.getElementsByTagName("Attachment");
这个
var attachment = xmlStr.getElementsByTagName("d\\:Attachment");
这些都不起作用。 第二种方式返回HTMLCollection对象。但我只想要这个标签的内容
这种方式适用于iOS设备:
var attachment = xmlStr.getElementsByTagName("d:Attachment")[0].childNodes[0].nodeValue;
这种方式适用于Android设备:
var items = xmlStr.getElementsByTagName("Attachment");
for (var i = 0; i < items.length; i++) {
var attachment = items[i].childNodes[0].nodeValue;
}