我用Javascript解析XML。我的XML看起來像這樣:JS XML解析:值不變
<?ml version="1.0" encoding="UTF-8">
<IPC_XML>
<dfr>
<dfr>
<data>
<analog>
<channel index="0">
<label>Channel 1</label>
</channel>
<channel index="1">
<label>Channel 2</label>
</channel>
</analog>
</data>
</dfr>
</dfr>
</IPC_XML>
忽略奇怪的結構(超出我的控制範圍)。我正在運行這個JS代碼:
function updateAnalogCfgValues (xmlDoc) {
var analogCfgs = xmlDoc.selectNodes ("//channel");
var cfg = analogCfgs.nextNode();
var cnt = 1;
while (cfg !== null) {
var node = document.getElementById ("aChan"+cnt);
var tmp = document.createElement ("b");
tmp.innerText = cfg.selectSingleNode ("//label").text;
node.appendChild (tmp);
cfg = analogCfgs.nextNode(); cnt++;
}
}
當我在調試器看東西,事情看起來很好。我可以看到cfg
變量的變化,我可以看到它的第一個孩子是<label>
元素,其值也在變化。問題是,當我查看HTML時,我看到的只是一遍又一遍的「頻道1」。該文本從不改變。有任何想法嗎?
編輯:任何機會我的selectSingleNode
電話現在'刷新'(缺乏更好的術語)?
我想嘗試的第一件事是將標籤更改爲/標籤 - 但我無法測試,因此我不確定它的答案是否... – Murph 2011-05-31 16:42:48
使用'/ label',我得到對於沒有文本屬性的空對象的例外。 – Nik 2011-05-31 16:47:14
嗯,只是標籤呢? – Murph 2011-06-01 07:44:42