0

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

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

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

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

或者

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

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

我究竟做错了什么?

4

1 回答 1

0
xmlDoc.getElementsByTagName('t1')

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

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

那应该可以完成工作,这里是一个示例,它大致显示了您要执行的操作:http: //www.w3schools.com/dom/dom_nodes_nodelist.asp

于 2012-10-10T13:43:54.643 回答