如何从Javascript中的.xml文件中获取XML值?

时间:2012-10-10 13:27:53

标签: javascript html xml

我有一个名为'status.xml'的文件,其中包含以下内容:

<response>
<r1>~relay(1)~</r1>
<r2>~relay(2)~</r2>
<ct>~currentime~</ct>
<soc>~gaugeSOC~</soc>
<t1>25</t1>
</response>

从位于与我的status.xml文件相同的根目录中的.htm页面,我想获取值并将其解析为整数。我尝试了以下两种方法失败:

<script>
...
xmlDoc=loadXMLDoc("status.xml");
gaugeSOC.setValue(xmlDoc.getElementsByTagName('t1'));
</script>

OR

<script>
...
var x = getXMLValue('status.xml', 't1');
gaugeSOC.setValue(x);
</script>

其中gaugeSOC.setValue(int)接收整数。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

xmlDoc.getElementsByTagName('t1')

此行返回节点对象列表,因此无法直接转换为Integer值。您必须先选择正确的子元素:

x = xmlDoc.getElementsByTagName('t1')
var i = x[0].childNodes[0].nodeValue;

那应该做的工作,这里的参考是一个例子,它大致显示了你要做的事情:http://www.w3schools.com/dom/dom_nodes_nodelist.asp