1

这个问题类似于 从孩子计算祖父母内的父节点。XSL。但是那个有点不同,这就是我创建新的原因。所以,我有这样的 xml(注意!这是示例 xml,所以结构可以不同)。

<a>
  <b>
    <c>     
      <d>    
        text
      </d>    
    </c>    
    <b>    
      <c>    
        <d>
          text    
        </d>   
      </c>
    </b>        
  </b>    
</a>    

我需要像这样计算<c>顶级内的节点<b>

<a>
  <b>
    <c>     
      <d>    
        text c number 1
      </d>    
    </c>    
    <b>    
      <c>    
        <d>
          text c number 2  
        </d>   
      </c>
    </b>        
  </b>    
</a>

等等。如果我有更深的结构,我仍然需要计算所有<c>顶级内部<b>并将其数量放入<d>. 笔记!我在里面<d>,所以我需要数一数。

目前我有这个代码count(ancestor::b[last()]/descendant::c/preceding-sibling::c),但它不工作((

请帮忙。谢谢你。

4

1 回答 1

1

在 c/d 的模板中,我会写

<xsl:number level="any" 
            count="c" 
            from="ancestor::b[parent::*[not(parent::*)]]"/>

获取第二级 b 元素内的父 c 元素的编号。

于 2013-11-12T17:33:35.843 回答