2

XML ファイルから情報を解析して正しく実行するスクリプトを下にリストしました。最大制限の結果 (たとえば 5) を表示したい場合、それを行うことができません。「スライス」機能が必要だと思います。単純なテキスト配列 (「マンゴー、バナナ」、「キウイ」、「ピーチ」) で同じ関数を使用しても問題はありません。何か提案はありますか? よろしくお願いします。

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","cd_catalog.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML; 
x=xmlDoc.getElementsByTagName("CD");

function displayCDInfo(i)
{
  artist=(x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue);
  title=(x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue);
  year=(x[i].getElementsByTagName("YEAR")[0].childNodes[0].nodeValue);
  country=(x[i].getElementsByTagName("COUNTRY")[0].childNodes[0].nodeValue);
  company=(x[i].getElementsByTagName("COMPANY")[0].childNodes[0].nodeValue);
  price=(x[i].getElementsByTagName("PRICE")[0].childNodes[0].nodeValue);
  txt="Artist: "+artist+"<br />Title: "+title+"<br />Year: "+year+"<br />Country: "+country+"<br />Company: "+company+"<br />Price: "+price  ;
  document.getElementById("showCD").innerHTML=txt;
}
4

1 に答える 1

0

本当に欲しいものは明確ではありませんが、この関数をどこかで呼び出していると思います.var xは配列です。これを試して 。

for(var i=0;i<5;i++){
    displayCDInfo(i)
    }
于 2012-09-20T10:58:57.563 に答える