JQuery: получение элементов из XML в другом порядке - PullRequest
0 голосов
/ 27 мая 2009

XML-ответ на запрос ajax выглядит следующим образом:

<element type='type1' />
<element type='type2' />
...
<element type='type1' />

Я хочу вставить элементы dom на основе xml, но я хочу, чтобы они были упорядочены следующим образом: сначала все элементы типа1, а затем все элементы типа 2.

Для меня имело смысл (и я также читал некоторые обсуждения в Интернете), что составной селектор сделает это: $(xml).find('element[type=type1], element[type=type2]').each(). К сожалению, это все еще возвращает элемент в порядке xml.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 27 мая 2009
var arr=$(xml).find('element[type=type1]').get().concat(
           $(xml).find('element[type=type2]').get()
         );

, который дает вам массив, который упорядочен, как вы хотите. Тогда я думаю, что вы можете:

$(arr).each(); 

и делай как хочешь

0 голосов
/ 27 мая 2009

А как насчет простого выбора типов отдельно? Вместо того, чтобы помещать их все в один селектор, просто используйте два оператора и проведите их по отдельности.

$(xml).find('element[type=type1]').each( ... );
$(xml).find('element[type=type2]').each( ... );

Или это невозможно по какой-то другой причине?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...