Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml xslt-添加</tr>&书信电报;tr>;每n个节点?_Xml_Xslt - Fatal编程技术网

Xml xslt-添加</tr>&书信电报;tr>;每n个节点?

Xml xslt-添加</tr>&书信电报;tr>;每n个节点?,xml,xslt,Xml,Xslt,我在这里找到了解决该问题的优雅解决方案: 我想了解xslt代码,我想知道您是否可以通过查看上面提供的链接来帮助我理解它 基本上有3个。对我来说,前两个就足够达到目的了。然而,我只尝试了2个,但它不起作用。简言之,第三个是必需的。这是: <xsl:template match="gallery[not(position() mod 6 = 1)]"/> 第二个模板具有模式,而最后一个模板没有 我不知道最后一个是什么时候执行的。你能帮我弄清楚吗 谢谢你的帮助 问候, 罗兰第一个模板

我在这里找到了解决该问题的优雅解决方案:

我想了解xslt代码,我想知道您是否可以通过查看上面提供的链接来帮助我理解它

基本上有3个
。对我来说,前两个就足够达到目的了。然而,我只尝试了2个
,但它不起作用。简言之,第三个是必需的。这是:

<xsl:template match="gallery[not(position() mod 6 = 1)]"/>

第二个模板具有模式,而最后一个模板没有

我不知道最后一个是什么时候执行的。你能帮我弄清楚吗

谢谢你的帮助

问候,


罗兰

第一个模板匹配位置1和7,第二个模板从第一个模板内调用以输出所有同级。最后一个模板匹配位置2、3、4、5、6、8和9,这样这些位置会再次出现注释..就像不做任何事情的模板一样

这是您询问的完整代码。我恰好是作者,所以让我解释一下:

<xsl:stylesheet version="1.0" 
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
 <xsl:output omit-xml-declaration="yes" indent="yes"/> 
 <xsl:strip-space elements="*"/> 
在模式“proc”中调用以下模板,以处理一组6中应位于同一行的每个
gallery
元素

<xsl:template match="gallery" mode="proc"> 
  <td> 
    <img src="{gallery-image-location}" alt="{gallery-image-alt}"/> 
  </td> 
 </xsl:template> 

您需要熟悉XSLT的处理模型、默认处理和内置模板。

为什么不请Dimitre Novatchev回答评论?好问题,+1。请参阅我对代码的详细解释。@Dimitri:谢谢Dimitri,我现在了解了代码是如何构建的:D@Alejandro:我不知道那其实是一面镜子老实说,我不知道该怎么做才能得到我问题的答案:在这里发帖,联系迪米特里本人,在迪米特里最初的评论末尾发表评论。。。对不起,如果我弄脏了那个论坛,但在我看来,这个解释值得一个新的话题;)
<xsl:template match="gallery" mode="proc"> 
  <td> 
    <img src="{gallery-image-location}" alt="{gallery-image-alt}"/> 
  </td> 
 </xsl:template> 
 <xsl:template match="gallery[not(position() mod 6 = 1)]"/> 
</xsl:stylesheet>