私は現在、Webページを生成するためにXMLファイルから情報を読み取る必要がある小さなアプリケーションを作成しています。xmlファイルから結果をソートする
私は1つのパラメータ(mood = String)をとるJavaScript関数を持っています。
<program id="10">
<name>Foo</name>
<mood>Bar</mood>
<image>/program-images/file-name.123</image>
</program>
のxml:
if (window.XMLHttpRequest) {
xhttp = new XMLHttpRequest();
} else { // IE 5/6
xhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET", "programme_catalog.xml", false);
xhttp.send();
xmlDoc = xhttp.responseXML;
function getContent(mood) {
$(xmlDoc).find("program").each(function(){
if ($(this).find('mood').text() == mood) {
$("#sky-recommender").append(
'<div id=\'program-holder\'> <div id=\'program-cover\'><img height="130px" width="188px" src=\"' + $(this).find('image').text() + '\" /> </div> <div id=\'program-title\'><p>' + $(this).find('name').text() +
'</p></div></div>'
);
}
});
}
私のxmlファイル内のエントリを:関数は、xmlファイルを見て、気分パラメータに対応するすべての「プログラム」を返すのXMLHttpRequestからresponseTextを使用していますファイルは同じ気分で多くの項目で構成できますが、getContent
関数はプログラムIDでソートされた5つの結果だけを昇順で返すようにしたいと考えています。
私はgetContent()
のコンテンツの周りにforループを置くことができると推測していますが、正しく並べ替える方法がわかりません。
私はいくつかの情報を忘れてしまったかどうか、何か助けていただければ幸いです。
感謝:)
私はそれらをすべて取り出し、並べ替えています、最も高いID(最も新しい)から始まる5を選択してください –
私は配列を使用することを考えていましたが、私は各結果から1文字列を取得するだけではありません。私は得ています、、 –