2015-01-08 2 views
2

이 값을 다른 템플릿에서 선택할 수 있도록 테이블을 순차적으로 열거하고이 값을 일종의 변수에 저장하는 것이 가능한지 알고 싶습니다.
템플릿 테이블이 호출 될 때마다 변수가 증가되어야합니다 ("카운터"의 첫 번째 값은 1이어야합니다).순차적으로 테이블을 열거하는 방법

<xsl:output method="html"/> 
    <xsl:template match="/"> 
    <html> 
     <head> 
      <title>Tables.</title> 
     </head> 
     <body> 
      <xsl:apply-templates select="table"/> 
      <!-- apply more templates --> 
     </body> 
    </html> 
    </xsl:template> 

    <xsl:template match="table">  
    <center>   
     <b>Table **ENUMERATION OF THE TABLE** - </b><xsl:value-of select="title"/>               
    </center> 
    <br/> 
    </xsl:template> 

    <!-- more templates --> 

입력 (XML) :

<table id="table1"> 
<title>Title.</title> 
<br/> 
</table> 

<table id="table2"> 
<title>Title.</title> 
<br/> 
</table> 

출력 (HTML) :
표 1 - 제목입니다.
표 2 - 제목.

+1

당신이 입력하고 필요한 출력의 작은 예를 제공 할 수있다 :에

<xsl:template match="/root"> <xsl:copy> <xsl:apply-templates select="table"/> </xsl:copy> </xsl:template> <xsl:template match="table"> <center> <b>Table <xsl:value-of select="position()"/> - </b> <xsl:value-of select="title"/> </center> <br/> </xsl:template> 

이됩니다 귀하의 의견은 무엇인가처럼 보인다면? –

+0

@ michael.hor257k : Uptaded! – Ariana

+1

최소한 두 개의 테이블이있는 최소이지만 완전한 입력을 보여 주려했습니다. –

답변

1

귀하의 예는 좋지 않습니다.

<root> 
    <table id="table1"> 
     <title>Title 1</title> 
    </table> 
    <not-table/>  
    <table id="table2"> 
     <title>Title 2</title> 
    </table> 
    <not-table/>  
    <table id="table3"> 
     <title>Title 3</title> 
    </table> 
</root> 

후 적용 :

<root> 
    <center> 
     <b>Table 1 - </b>Title 1</center> 
    <br/> 
    <center> 
     <b>Table 2 - </b>Title 2</center> 
    <br/> 
    <center> 
     <b>Table 3 - </b>Title 3</center> 
    <br/> 
</root> 
+0

이 값을 일종의 변수에 저장할 수 있습니까? 그리고 요소 테이블에 대해서만 position()을 사용하도록 지정하려면? 열거 형이 올바르게 작동하지 않기 때문입니다. 열거가 잘못되었습니다. – Ariana

+0

문제를 재현하기 위해 질문을 편집하고 충분한 코드 (XML + XSLT)를 게시하십시오. 열거 형은 내 코드를 사용할 때 잘못되지 않습니다. http://xsltransform.net/jyH9rMd –

+0

좋아, 이미 완료했습니다 – Ariana

관련 문제