选择最后一个孩子

时间:2013-02-16 19:22:19

标签: jquery xml querypath

我的XML结构就像

<root>
  <elem1>..</elem1>
  <elem1>..</elem1>
  *<elem1>..</elem1>*
  <elem2>
    <elem1>..</elem1>
    <elem1>..</elem1>
    ¬ <elem1>..</elem1> ¬
  </elem2>
</root>

我需要选择root的直接子节点的最后一个elem1(标有* *)。

我想在QueryPath中执行此操作 - http://querypath.org。但是JQuery语法也可以提供帮助。

$root->find('elem1')->last();
$root->find('elem1:last);
$root->find('elem1:last-child); 

以上三个选择标有¬

的elem1

3 个答案:

答案 0 :(得分:2)

您可以使用last方法:

$('root > elem1').last();

通过查看QueryPath API,您似乎可以编写代码:

$root->children('elem1')->last()

答案 1 :(得分:0)

last()方法将匹配元素集合减少到集合中的最后一个元素,可以像下面一样为你做这些;

$('root > elem1').last();

OR

您可以使用:last-child Selector选择所有父母最后一个孩子的元素。

$('root elem1:last-child');

答案 2 :(得分:0)

这有效

$root->find('elem1:last-of-type'); 

感谢David Thomas的概念验证 http://jsfiddle.net/davidThomas/RehZ7/