【发布时间】:2013-10-01 20:26:55
【问题描述】:
我有一个 xml 字符串,我需要从仅使用 JavaScript 中提取一个值。以下是 xml 字符串的示例:
<RequestVars>
<BuyerCookie>O7CPHFP7AOY</BuyerCookie>
<Extrinsic name="CostCenter">670</Extrinsic>
<Extrinsic name="UniqueName">catalog_tester</Extrinsic>
<Extrinsic name="UserEmail">catalog_tester@mailinator.com</Extrinsic>
</RequestVars>
我需要从中获取电子邮件地址(即 catalog_tester@mailinator.com)。我有一种方法可以提取给定唯一元素的值,例如使用此函数为 BuyerCookie 获取 O7CPHFP7AOY:
function elementValue(xml, elem) {
var begidx;
var endidx;
var retStr;
begidx = xml.indexOf(elem);
if (begidx > 0) {
endidx = xml.indexOf('</', begidx);
if (endidx > 0)
retStr = xml.slice(begidx + elem.length,
endidx);
return retStr;
}
return null;
}
但是现在,我需要一种方法来查找“Extrinsic”元素的值,属性“name”的值为“UserEmail”。我已经看到了几种在 JQuery 中完成此任务的方法,但在 JavaScript 中却没有。不幸的是,出于我的目的,我只能使用 JavaScript。有什么想法吗?
【问题讨论】:
-
不,这似乎没有帮助
-
不要将 XML 解析为字符串。永远。
标签: javascript xml parsing