我有以下xml:
<response>
<result-code fatal="false">0</result-code>
<lgt from="100" lgt="5.37828" to="644"/>
<lgt from="100" lgt="354.634640124" to="756"/>
</response>
如何使用javascript根据从和到属性的值查找和解析 lgt 属性值?
答案 0 :(得分:2)
首先,将xml字符串解析为xmlDoc(假设您没有使用xmlHttpRequest responseXML - 在这种情况下跳过转换)
var str = '<response><result-code fatal="false">0</result-code><lgt from="100" lgt="5.37828" to="644"/><lgt from="100" lgt="354.634640124" to="756"/></response>';
var xmlDoc = (new DOMParser()).parseFromString(str, "text/xml");
至少在firefox / chrome中你可以使用以下内容 -
function parseLGT(from, to) {
var x = xmlDoc.querySelector('lgt[from="' + from + '"][to="' + to + '"]');
return x && x.getAttribute('lgt')
};
console.log(parseLGT(100,644));
IE / Edge - 我还没有测试过
答案 1 :(得分:0)
您可以这样解析:
var parser = new DOMParser();
var xmlDoc = parser.parseFromString('<response><result-code fatal="false">0</result-code><lgt from="100" lgt="5.37828" to="644"/><lgt from="100" lgt="354.634640124" to="756"/></response>', "text/xml");
// your condition goes here from/to
if (parseInt(xmlDoc.getElementsByTagName("lgt")[0].getAttribute('to')) < 700) {
xmlDoc.getElementsByTagName("lgt")[0].getAttribute('lgt');
}