在通用模式下的JavaScript解析 [英] XML Parsing in Javascript in Generic Mode
问题描述
我需要帮助XML解析
它是新的
Hi I need help in XML Parsing Am new to it
我需要知道一些教程用于XML解析在javascript
I need to know some tutorials for XML parsing in javascript
我收到一个XML文档,我试图解析以获取 FIRSTNAME
& LASTNAME
从xml文档,但不能这样做
I got an XML document which I tried to parse to get the contents of FIRSTNAME
& LASTNAME
from the xml doc but cannot do so
我的XML
<MESSAGE>
<HEADER>
<LOGIN>
00986544
</LOGIN>
</HEADER>
<SESSION>
<LATITUDE>
0.0
</LATITUDE>
<LONGITUDE>
0.0
</LONGITUDE>
<TYPE>PRELOGIN</TYPE>
<KEY>PRELOGIN/ID</KEY>
<APP/>
<TRANSACTION>PRELOGIN</TRANSACTION>
</SESSION>
<PAYLOAD>
<PRELOGIN>
<TABLE>
<FIRSTNAME> papapap</FIRSTNAME>
<LASTNAME> hajka</LASTNAME>
</TABLE>
</PRELOGIN>
</PAYLOAD>
</MESSAGE>
以下是我尝试的代码
var message = xml.documentElement.getElementsByTagName("MESSAGE");
var firstname = xml.documentElement.getElementsByTagName("FIRSTNAME");
var lastname = xml.getElementById("LASTNAME");
我得到一些 HTMLCollection
Object作为答案,不是名字
I get some HTMLCollection
Object as answer but not the name
请指导。
推荐答案
DOM方法 getElementsByTagName
返回一个 NodeList
对象,它是一个数组,即使只找到一个元素。你必须选择第一个:
The DOM method getElementsByTagName
returns a NodeList
object, which is an array, even if only one element is found. You have to select the first one:
var message = xml.documentElement.getElementsByTagName("MESSAGE")[0];
该方法搜索整个树中所有出现的代码作为参数,所以如果您有多个具有相同名称的标签,即使它们在不同的子树中,也将被选中。这也不是最有效的方法。但是,由于您只有一个 FIRSTNAME
和一个 LASTNAME
,您可以使用以下方式提取它们:
The method searches the whole tree for all the occurrences of the tag you pass as a parameter, so if you have multiple tags with the same name, even if they are in different subtrees, they will be selected. It's also not the most efficient method. But since you only have one FIRSTNAME
and one LASTNAME
you can extract them using:
var firstname = xml.documentElement.getElementsByTagName("FIRSTNAME")[0];
var lastname = xml.documentElement.getElementsByTagName("LASTNAME")[0];
这篇关于在通用模式下的JavaScript解析的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!