使用XmlHttpRequest的XML getAttribute()问题 [英] XML getAttribute() Question using XmlHttpRequest

查看:90
本文介绍了使用XmlHttpRequest的XML getAttribute()问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

因此,我在下面的这个XML文件(Devices.XML):我想让浏览器显示两个设备的名称,uuid和id.我有两个设备,一个叫ccat,另一个叫HAAS

设备1

So I have this XML file below (Devices.XML) below: I want to get the browser to display the name, uuid and id of my two devices. I have two devices, one named ccat and the other names HAAS

Device 1

<pre lang="C++">name="ccat"<br />
</pre><pre lang="C++">uuid="imts-demonstration"</pre><br />
<pre lang="C++">id="id1001"></pre>



设备2




Device 2


<pre lang="C++">name="HAAS"<br />
uuid="HAAS-minimil" <br />
id="id1002"></pre>




Devices.XML文件




Devices.XML file

<pre lang="xml"><?xml version="1.0" encoding="UTF-8" ?><br />
- <MTConnectDevices xmlns="urn:mtconnect.org:MTConnectDevices:1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mtconnect.org:MTConnectDevices:1.1 http://www.mtconnect.org/schemas/MTConnectDevices_1.1.xsd"><br />
  <Header version="1.1" sender="Company MTConnect Instance" creationTime="2010-08-26T19:00:47-07:00" instanceId="2" bufferSize="5000" /><br />
- <Devices><br />
- <Device sampleRate="10.0" name="ccat" iso841Class="1" uuid="imts-demonstration" id="id1001"><br />
  <Description manufacturer="Company Name" serialNumber="Serial Number" /><br />
- <DataItems><br />
  <DataItem category="EVENT" id="id1" name="avail" type="AVAILABILITY" /><br />
  </DataItems><br />
- <Components><br />
- <Axes name="Axes" id="id105"><br />
- <DataItems><br />
  <DataItem type="PATH_FEEDRATE" name="path_feedratefrt" category="SAMPLE" id="id2" units="MILLIMETER/SECOND" subType="ACTUAL" /><br />
  </DataItems><br />
- <Components><br />
- <Rotary name="C" id="c"><br />
- <DataItems><br />
  <DataItem category="SAMPLE" id="id3" name="Srpm" type="SPINDLE_SPEED" units="REVOLUTION/MINUTE" subType="ACTUAL" /><br />
  </DataItems><br />
  </Rotary><br />
- <Linear name="X" id="x"><br />
- <DataItems><br />
  <DataItem category="SAMPLE" id="id4" name="Xabs" type="POSITION" units="MILLIMETER" subType="ACTUAL" /><br />
  <DataItem category="SAMPLE" id="id5" name="Xfrt" type="AXIS_FEEDRATE" units="MILLIMETER/SECOND" subType="ACTUAL" /><br />
  </DataItems><br />
  </Linear><br />
- <Linear name="Y" id="y"><br />
- <DataItems><br />
  <DataItem category="SAMPLE" id="id6" name="Yabs" type="POSITION" units="MILLIMETER" subType="ACTUAL" /><br />
  <DataItem category="SAMPLE" id="id7" name="Yfrt" type="AXIS_FEEDRATE" units="MILLIMETER/SECOND" subType="ACTUAL" /><br />
  </DataItems><br />
  </Linear><br />
- <Linear name="Z" id="z"><br />
- <DataItems><br />
  <DataItem category="SAMPLE" id="id8" name="Zabs" type="POSITION" units="MILLIMETER" subType="ACTUAL" /><br />
  <DataItem category="SAMPLE" id="id9" name="Zfrt" type="AXIS_FEEDRATE" units="MILLIMETER/SECOND" subType="ACTUAL" /><br />
  </DataItems><br />
  </Linear><br />
  </Components><br />
  </Axes><br />
- <Controller name="Controller" id="id106"><br />
- <DataItems><br />
  <DataItem category="EVENT" id="id10" name="block" type="BLOCK" /><br />
  <DataItem category="EVENT" id="id11" name="execution" type="EXECUTION" /><br />
  <DataItem category="EVENT" id="id12" name="mode" type="CONTROLLER_MODE" /><br />
  <DataItem category="EVENT" id="id13" name="program" type="PROGRAM" /><br />
  <DataItem category="EVENT" id="id14" name="line" type="LINE" /><br />
  <DataItem category="CONDITION" id="id16" name="communications" type="COMMUNICATIONS" /><br />
  <DataItem category="CONDITION" id="id17" name="temperature" type="TEMPERATURE" /><br />
  </DataItems><br />
  </Controller><br />
  </Components><br />
  </Device><br />
- <Device sampleRate="10.0" name="HAAS" iso841Class="1" uuid="HAAS-minimil" id="id1002"><br />
  <Description manufacturer="Company Name" serialNumber="Serial Number" /><br />
- <DataItems><br />
  <DataItem category="EVENT" id="iid1" name="avail" type="AVAILABILITY" /><br />
  </DataItems><br />
- <Components><br />
- <Axes name="Axes" id="iid105"><br />
- <DataItems><br />
  <DataItem type="PATH_FEEDRATE" name="path_feedratefrt" category="SAMPLE" id="iid2" units="MILLIMETER/SECOND" subType="ACTUAL" /><br />
  </DataItems><br />
- <Components><br />
- <Rotary name="C" id="ic"><br />
- <DataItems><br />
  <DataItem category="SAMPLE" id="iid3" name="Srpm" type="SPINDLE_SPEED" units="REVOLUTION/MINUTE" subType="ACTUAL" /><br />
  </DataItems><br />
  </Rotary><br />
- <Linear name="X" id="ix"><br />
- <DataItems><br />
  <DataItem category="SAMPLE" id="iid4" name="Xabs" type="POSITION" units="MILLIMETER" subType="ACTUAL" /><br />
  <DataItem category="SAMPLE" id="iid5" name="Xfrt" type="AXIS_FEEDRATE" units="MILLIMETER/SECOND" subType="ACTUAL" /><br />
  </DataItems><br />
  </Linear><br />
- <Linear name="Y" id="iy"><br />
- <DataItems><br />
  <DataItem category="SAMPLE" id="iid6" name="Yabs" type="POSITION" units="MILLIMETER" subType="ACTUAL" /><br />
  <DataItem category="SAMPLE" id="iid7" name="Yfrt" type="AXIS_FEEDRATE" units="MILLIMETER/SECOND" subType="ACTUAL" /><br />
  </DataItems><br />
  </Linear><br />
- <Linear name="Z" id="iz"><br />
- <DataItems><br />
  <DataItem category="SAMPLE" id="iid8" name="Zabs" type="POSITION" units="MILLIMETER" subType="ACTUAL" /><br />
  <DataItem category="SAMPLE" id="iid9" name="Zfrt" type="AXIS_FEEDRATE" units="MILLIMETER/SECOND" subType="ACTUAL" /><br />
  </DataItems><br />
  </Linear><br />
  </Components><br />
  </Axes><br />
- <Controller name="Controller" id="iid106"><br />
- <DataItems><br />
  <DataItem category="EVENT" id="iid10" name="block" type="BLOCK" /><br />
  <DataItem category="EVENT" id="iid11" name="execution" type="EXECUTION" /><br />
  <DataItem category="EVENT" id="iid12" name="mode" type="CONTROLLER_MODE" /><br />
  <DataItem category="EVENT" id="iid13" name="program" type="PROGRAM" /><br />
  <DataItem category="EVENT" id="iid14" name="line" type="LINE" /><br />
  <DataItem category="CONDITION" id="iid16" name="communications" type="COMMUNICATIONS" /><br />
  <DataItem category="CONDITION" id="iid17" name="temperature" type="TEMPERATURE" /><br />
  </DataItems><br />
  </Controller><br />
  </Components><br />
  </Device></pre><br />



我假设为了使浏览器显示名称,id和uuid,我使用了getAttribute()命令,但是它不起作用.

这是我所拥有的



I''m assumining in order to get the browser to display the names, id and uuid, I use the getAttribute() command, but it''s not working.

Here is what I have

<pre lang="xml"><html><br />
<head><br />
<br />
<script type="text/javascript"><br />
if (window.XMLHttpRequest)<br />
  {// code for IE7+, Firefox, Chrome, Opera, Safari<br />
  xmlhttp=new XMLHttpRequest();<br />
  }<br />
else<br />
  {// code for IE6, IE5<br />
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");<br />
  }<br />
xmlhttp.open("GET","Devices.xml",false);<br />
xmlhttp.send();<br />
xmlDoc=xmlhttp.responseXML;<br />
<br />
x=xmlDoc.getElementsByTagName(''Devices'');<br />
i=0;<br />
<br />
function displayDevices()<br />
{<br />
name=(x[i].getAttribute(''name'')[0].childNodes[0].nodeValue);<br />
uuid=(x[i].getAttribute(''uuid'')[0].childNodes[0].nodeValue);<br />
id=(x[i].getAttribute(''id'')[0].childNodes[0].nodeValue);<br />
txt="name: " + name + "<br />uuid: " + uuid + "<br />id: "+ id;<br />
document.getElementById("showDevices").innerHTML=txt;<br />
}<br />
</script><br />
</head><br />
<body onload="displayDevices()"><br />
<br />
<div id=''showDevices''></div><br />
<br />
</body><br />
</html>`</pre><br />





基本上,我希望浏览器显示以下内容:





Basically, I want my browser to display this:

Name: ccat 
uuid: imts-demonstration
id: id1001





Name: HAAS
uuid: HAAS-minimil
id: id1001





但是每次打开浏览器时,我都会得到一个空白页面.我正在使用Firefox,顺便说一句.我正在使用此网站引用我的代码: http://www.w3schools.com/XML/xml_applications.asp [< ^ ]

有人知道我在做什么错吗?





But everytime I open my browser I get an empty page. I''m using firefox, btw. I was using this website to reference my code: http://www.w3schools.com/XML/xml_applications.asp[^]

does anyone know what I''m doing wrong?

推荐答案

我认为您应该使用模式来验证xml.首先使用xmlschema验证xml,然后尝试您的代码.
i think you should use schema to validate the xml . first validate the xml with your xmlschema then try your code.


这篇关于使用XmlHttpRequest的XML getAttribute()问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆