У меня есть то, что я думаю, должно быть прямым вопросом; позвольте мне быстро объяснить:
В моем 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 в массив, так как позже мне придется переписывать много кода. Производительность на самом деле не имеет большого значения, поэтому не стесняйтесь клонировать/вкладывать циклы сколько угодно. Спасибо за ваше время.