率直な質問であるべきだと思います。簡単に説明させてください:
私のJavaScriptでは、次のようfood.xml
に読み込まれます:
getMenuXml.open("GET","food.xml",false);
getMenuXml.send();
xmlDoc=getMenuXml.responseXML;
xmlFoodList = xmlDoc.getElementsByTagName("food");
これでxmlFoodList
、すべての食品要素を含む NodeList ができました。これまでのところ素晴らしい。<category>
問題は、内部の要素に基づいてノードを並べ替えたいことです。私はそれを読むことができます:
xmlFoodList[i].getElementsByTagName("category")[0].childNodes[0].nodeValue
私のコードの後半では、食品がリストに表示されます。ご想像のとおり、同じカテゴリの食品を一緒にリストする必要があります。だから、私の質問は次のとおりです。カテゴリに基づいてノードを並べ替えるにはどうすればよいですか?xmlFoodList
注: 着信を変更することはできませんfood.xml
。また、後でコードを編集して、リストにデータが入力されるときに並べ替えを実行したくありません。NodeList を配列に変換したくありません。後で多くのコードを書き直す必要があるからです。パフォーマンスは実際にはあまり問題にならないので、必要に応じてクローン/ネストされたループを自由に作成してください。御時間ありがとうございます。