[英]choosing what XML data to display without attributes JS/XML
因此,我想使用Javascript選擇要顯示(而不使用屬性)的XML數據。 以下是有關我要做什么的詳細信息:
XML格式
<channel>
<item>
<title>3.jpg</title>
<link>images/clean/3-dirty.jpg</link>
</item>
<item>
<title>4.jpg</title>
<link>images/clean/4-dirty.jpg</link>
</item>
<item>
<title>5.jpg</title>
<link>images/clean/4-clean.jpg</link>
</item>
<item>
<title>6.jpg</title>
<link>images/clean/4-dirty.jpg</link>
</item>
... and the list goes on for ages.
</channel>
Java腳本
<script type="text/javascript">
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","xml/drc.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var x=xmlDoc.getElementsByTagName("item");
for (i=0;i<x.length;i++)
{
document.write("<img src='");
document.write(x[i].getElementsByTagName("link")[0].childNodes[0].nodeValue);
document.write("' alt='image' height='220px' width='260px' />");
}
</script>
如何顯示網址中僅包含“臟”或“干凈”字樣的圖片? 我試過使用IndexOf()方法,但無法使其正常工作。
嘗試這個:
for (i=0;i<x.length;i++) {
var src = x[i].getElementsByTagName("link")[0].childNodes[0].nodeValue;
if( src.indexOf("dirty") != -1 ) {
document.write("<img src='");
document.write(src);
document.write("' alt='image' height='220px' width='260px' />");
}
}
如果不起作用,請嘗試以下操作:
for (i=0;i<x.length;i++) {
var src = x[i].getElementsByTagName("link")[0].childNodes[0].nodeValue;
var srcLower = src.toLowerCase();
if( srcLower.indexOf("dirty") != -1 ) {
document.write("<img src='");
document.write(src);
document.write("' alt='image' height='220px' width='260px' />");
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.