1

可能重复:
如何找到作为具有特定属性的元素的子元素的祖先或自我?

您如何选择仅比 Home 低一级的祖先?假设当前节点是 Home/ News /moreType/2010/09/NewsItem1,我想获取News。(在主页下可以有登陆部分页面,如新闻或其他类型的节点,如公共文件夹)到目前为止,我已经尝试过 -在 XPath Builder 中运行查询,上下文节点设置为 NewsItem1

  • ancestor::*[position() = last() - 1]语法错误,虽然 ancestor::*[last()]似乎返回 Home

  • ancestor::*[@@parentid='{home guid}']@@parentid 有问题,请参阅我的其他问题和评论

  • (ancestor::*[position() < last()])[last()]语法错误

我要解决的问题是:在主页下找到任何“页面”的登陆部分父级,以突出导航菜单的目的。我参考了Sitecore 查询语法(并学习了一些有趣的查询细节,就像/ancestor-or-self::*[@#More Criteria Field#!='']/.[1]实际工作一样),但我被困在这里。

感谢您的时间和投入。

4

2 回答 2

2

看这里

如何找到作为具有特定属性的元素的子元素的祖先或自我?

祖先或自我::*[父项::项[@key='根项的键']]

于 2012-10-05T10:02:21.103 回答
2
ancestor::*[parent::Home] 

(抱歉,如果您使用的是不支持的 XPath 的一些非标准变体,那么我无法帮助您。- 如果不是 XPath 问题,请更改标题)。

于 2012-10-05T09:02:26.143 回答