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ページから、で値をフェッチし、整数として解析します。次の2つの方法を試しましたが失敗しました。

<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 に答える