这是我关于堆栈溢出的第一个问题,希望你们能为我提供帮助。

这是我的xml

<?xml version="1.0"?>
<RecentPhotoUploads>
<PHOTO><SOURCE>6171.jpg</SOURCE></PHOTO>
<PHOTO><SOURCE>6173.jpg</SOURCE></PHOTO>
<PHOTO><SOURCE>6895.jpg</SOURCE></PHOTO>
<PHOTO><SOURCE>Tulips.jpg</SOURCE></PHOTO>
</RecentPhotoUploads>


这是我的JavaScript代码

    var xml=loadXMLDoc("../upload.xml");
    var source="/RecentPhotoUploads/PHOTO/SOURCE"

    var nodes=xml.evaluate(source, xml, null, XPathResult.ANY_TYPE, null);
    var result=nodes.iterateNext();


                while (result)
                {
                document.write("<h2>" + result.childNodes[0].nodeValue + "</h2>");
                document.write("<a href='../pics/" + result.childNodes[0].nodeValue + "</a>");
                result=nodes.iterateNext();
                }


我将如何向后遍历此xpathresult?

最佳答案

为什么要向后导航?您可以向后打印...

var xml=loadXMLDoc("../upload.xml");
var source="/RecentPhotoUploads/PHOTO/SOURCE"

var nodes=xml.evaluate(source, xml, null, XPathResult.ANY_TYPE, null);
var result=nodes.iterateNext();

var buffer = "";
while (result) {
    buffer = "<h2>" + result.childNodes[0].nodeValue + "</h2>"
           + "<a href='../pics/" + result.childNodes[0].nodeValue + "'>"
           + result.childNodes[0].nodeValue + "</a>"
           + buffer;
    result=nodes.iterateNext();
}
document.write(buffer);


无需诉诸documentFragment和类似的现代工具;)

关于javascript - 使用Java向后循环遍历XML,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12309866/

10-13 04:29