2009-05-27 60 views
0

从Ajax请求的XML响应看起来是这样的:jQuery的:从XML获得元素在不同的顺序

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

我想基于XML插入DOM元素,但我希望他们可以订购:首先是type1的所有元素,然后是type2的所有元素。

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

任何想法?

回答

0

如何分别选择类型?而不是将它们全部推入一个选择器,只需要两条语句并分别遍历它们。

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

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

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

给你一个你想要的数组。那么我认为你可以:

$(arr).each(); 

,并请你做