jquery:以不同的顺序从xml获取元素

时间:2009-05-27 12:40:17

标签: javascript jquery dom

来自ajax请求的xml响应如下所示:

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

我想基于xml插入dom元素,但我希望它们按以下顺序排序:首先是type1的所有元素,然后是type2的所有元素。

对我来说(我也在网上看过一些讨论),复合选择器会这样做:$(xml).find('element[type=type1], element[type=type2]').each()。不幸的是,它仍然以xml顺序获取元素。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

var arr=$(xml).find('element[type=type1]').get().concat(
           $(xml).find('element[type=type2]').get()
         );

它为您提供了一个按您想要的顺序排列的数组。然后我想你可以:

$(arr).each(); 

随你做,

答案 1 :(得分:0)

如何单独选择类型?而不是将它们全部推入一个选择器,只需要有两个语句并分别迭代它们。

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

或者其他原因是不可能的?