【问题标题】:Find parent node position using XSLT使用 XSLT 查找父节点位置
【发布时间】:2010-11-30 09:36:35
【问题描述】:

我想从 XSLT 中的子节点中找到父节点的位置。

【问题讨论】:

    标签: xslt xpath


    【解决方案1】:

    我要查找父节点 子节点的位置 XSLT。

    这完全使用 XPath 完成。

    答案取决于“父节点位置”的定义是什么

    count(../preceding-sibling::*) + 1
    

    是所有上层元素中父元素的序号

    count(../preceding-sibling::node()) + 1
    

    是父节点在所有上层节点(包括text-nodes、cmets和PIs)中的序号。

    如果当前节点是根/ 的直接子节点(例如顶级元素、顶级注释或顶级处理指令),则上述表达式是唯一正确的。

    【讨论】:

    • @VextoR,第一个节点,没有前面的兄弟姐妹——所以它的位置是零(前面的兄弟姐妹的数量)加一。如果您是第 N 个,那么您的位置是您的前一个兄弟姐妹的位置加一——这(通过归纳)是它前面的兄弟姐妹的计数加一——所以你的位置是:(你的前一个兄弟姐妹的前面的兄弟姐妹的计数加一)加一。括号中的表达式正是 your 前面的兄弟姐妹的计数——他们的位置是前面兄弟姐妹的计数加一。这里的“位置”不是 XPath 位置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-16
    • 1970-01-01
    相关资源
    最近更新 更多