我希望有人能够帮助我,我是 javaScript 和 XML 的新手,目前我正在尝试将产品的 xml 列表处理为我的 HTML 页面中的 ul 列表。我想从 xml 中获取所有产品并将它们显示为页面上的 li 元素。我已经设法编写代码来遍历 xml,但它只返回 xml 列表中的最后一个产品。我怎样才能得到所有的产品?欢迎任何建议。到目前为止我的代码:
<script>
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","product.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var x=xmlDoc.getElementsByTagName("product");
for (i=0;i<x.length;i++)
{
liOpen=("<li><p>");
title=(x[i].getElementsByTagName("title")[0].childNodes[0].nodeValue);
divOpen=("</p><div class='prod-sq-img'>");
image=(x[i].getElementsByTagName("imgfile")[0].childNodes[0].nodeValue);
closingTags=("</div></li>");
txt= liOpen + title + divOpen + image + closingTags ;
document.getElementById("ulList").innerHTML=txt;
}
</script>
感谢您的任何帮助
我的其他代码工作正常,它从列表中获取所有产品,但我需要将它传递到 DIV,有什么想法吗?
document.write("<ul class='prod-sq'>");
var x=xmlDoc.getElementsByTagName("product");
for (i=0;i<x.length;i++)
{
document.write("<li><p>");
document.write(x[i].getElementsByTagName("title")[0].childNodes[0].nodeValue);
document.write("</p><div class='prod-sq-img'>");
document.write(x[i].getElementsByTagName("imgfile")[0].childNodes[0].nodeValue);
}
document.write("</ul>");