使用javascript获取单个xml节点
这应该很简单,但由于某种原因,我似乎无法让它工作; 因此,我有一个XML文件,如下所示:使用javascript获取单个xml节点,javascript,html,xml,web-applications,xmlhttprequest,Javascript,Html,Xml,Web Applications,Xmlhttprequest,这应该很简单,但由于某种原因,我似乎无法让它工作; 因此,我有一个XML文件,如下所示: <board> <version>1</version> <r> <c> <tile>g</tile> </c> <c> <tile>B</tile> </c> </r> &l
<board>
<version>1</version>
<r>
<c>
<tile>g</tile>
</c>
<c>
<tile>B</tile>
</c>
</r>
<r>
<c>
<tile>C</tile>
</c>
<c>
<tile>D</tile>
</c>
</r>
</board>
最后,我在页面上有这样一个表格:
<FORM NAME = frmOne>
1val: <INPUT TYPE = Text NAME = input1 SIZE = 4 value ="">
<p>
<Input Type = Button NAME = b1 VALUE = "Save val" onClick = update_XX()>
<p>
<Input Type = Button NAME = b2 VALUE = "WOOOOO" onClick = get_cversion()>
</FORM>
1val:
我对整个XML游戏还是个新手。我知道我肯定错过了一些非常明显的东西,但我就是看不到,任何帮助都将不胜感激
谢谢。您可能希望在处理XML之前检查请求的状态。你的代码应该是这样的
function get_cversion(){
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
}
else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET", "board.XML", false);
xmlhttp.send();
if(xmlhttp.status == 200) {
var xmlDoc = xmlhttp.responseXML;
var mytext = 0
var x=xmlDoc.getElementsByTagName("version");
mytext = (x[0].childNodes[0].nodeValue);
mytext += "";
document.frmOne.input1.value = ""+mytext;
}
}
这是粘贴错误还是您确实缺少
这就足够了-假设这确实是您的代码:document.frmOne.input1.value=(x[0].childNodes[0].nodeValue)代码>正确,因此我添加了if,然后添加了else文档。frmOne.input1.value=“哇”;它会发出呜呜声……你知道为什么吗?因为我是个白痴:board.xml!=board.XML。分类。谢谢你的帮助。
function get_cversion(){
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
}
else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET", "board.XML", false);
xmlhttp.send();
if(xmlhttp.status == 200) {
var xmlDoc = xmlhttp.responseXML;
var mytext = 0
var x=xmlDoc.getElementsByTagName("version");
mytext = (x[0].childNodes[0].nodeValue);
mytext += "";
document.frmOne.input1.value = ""+mytext;
}
}