我是XML的新手.我想根据请求名称阅读以下XML.请帮助我如何在Java中阅读以下XML -
<?xml version="1.0"?>
<config>
<Request name="ValidateEmailRequest">
<requestqueue>emailrequest</requestqueue>
<responsequeue>emailresponse</responsequeue>
</Request>
<Request name="CleanEmail">
<requestqueue>Cleanrequest</requestqueue>
<responsequeue>Cleanresponse</responsequeue>
</Request>
</config>
Run Code Online (Sandbox Code Playgroud) 正如您在下面的代码中看到的,我在字符串中有一个 html 片段,然后将其解析为一个文档。但是当我遍历它并获取集合中的项目时,只能访问其他所有项目。还有一些行为,比如丢失集合中的项目也会发生,最终只剩下两个项目。
JSFiddle - https://jsfiddle.net/hari7190/xpvt214o/878427/
var response = "<option value='Bobs Dock'>Bobs Dock</option><option
value='Johns Dock'>Johns Dock</option><option value='Mikes Dock'>Mikes Dock</option><option value='Jacob Dock'>Jacob Dock</option><option value='Foo Dock'>Foo Dock</option>"
parser = new DOMParser();
doc = parser.parseFromString("<select>" + response + "</select>", "text/html");
var options = doc.getElementsByTagName("option");
for(i=0; i<options.length; i++){
console.log(i, options.length);
document.getElementById("list").append(options[i]);
}
Run Code Online (Sandbox Code Playgroud)
迭代结果如下:
index - 1 options.length - 3
index - 2 options.length - 2
Run Code Online (Sandbox Code Playgroud)
谁能解释为什么这个实现会这样?
请注意:我了解如何实现结果(如此处),但我正在寻找解释为什么上述代码的行为方式如此。