【发布时间】:2011-01-21 14:43:09
【问题描述】:
我有一个我认为应该是直截了当的问题;让我快速解释一下:
在我的 JavaScript 中,food.xml 被读入:
getMenuXml.open("GET","food.xml",false);
getMenuXml.send();
xmlDoc=getMenuXml.responseXML;
xmlFoodList = xmlDoc.getElementsByTagName("food");
所以现在我有一个包含所有食物元素的 NodeList xmlFoodList。到目前为止很棒。问题是我想根据内部元素<category> 对节点进行排序。我可以阅读:
xmlFoodList[i].getElementsByTagName("category")[0].childNodes[0].nodeValue
稍后在我的代码中,食品项目显示在一个列表中,正如您所期望的,我希望将同一类别的食品一起列出。所以,我的问题是:如何根据类别对 xmlFoodList 中的节点重新排序?
注意:我无法更改 food.xml 进来,并且我不想编辑我以后的代码来进行排序,因为列表已填充。我不想将 NodeList 转换为数组,因为我必须重写很多以后的代码。性能实际上并不是什么大问题,所以你可以随意克隆/嵌套循环。感谢您的宝贵时间。
【问题讨论】:
标签: javascript sorting nodelist