Печать статического контента после всего контента - PullRequest
0 голосов
/ 13 января 2012

Я генерирую HTML, используя XSL во время выполнения. Моя задача - распечатать раздел подписи после того, как все данные напечатаны. Я печатаю данные следующим образом:

Данные клиента 1
Данные клиента 2
Данные клиента 3
Данные клиента 4
Данные клиента 5

Подпись клиента 2

Данные каждого клиента имеют идентификатор, имя, адрес и т. Д., До 5 деталей на клиента. В конце всех данных клиента мне нужно распечатать раздел подписи клиента 2. В настоящее время данные клиента хранятся до 3 страниц, а раздел владельца печатается только на первой странице. Но мне нужен Клиент 2 в конце 3-х страниц.

Взгляните на образец XML ..

<t>
<customer/>
<customer/>
<customer/>
<customer/>
<customer/>
</t>


Мне нужен такой вывод

  Customer 1 data

  Customer 2 data

  Customer 3 data

  Customer 4 data

  Customer 5 data

  Customer 2' Signature.

1 Ответ

1 голос
/ 13 января 2012

Это преобразование :

<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="*"/>

 <xsl:template match="/*">
   <xsl:apply-templates/>

   <xsl:apply-templates mode="sign" select=
   "customer[@id=2]/SignatureSection"/>
 </xsl:template>

 <xsl:template match="customer">
 Customer <xsl:value-of select="position()"/> data
 </xsl:template>

 <xsl:template match="SignatureSection"/>

</xsl:stylesheet>

при применении к следующему документу XML (поскольку поддельный XML, предоставленный ленивым OP, бесполезен):

<t>
    <customer id="1">
     Some Customer1 Data

     <SignatureSection id="1">
       Signature of Customer1
     </SignatureSection>
    </customer>
    <customer id="2">
     Some Customer2 Data
     <SignatureSection id="2">
       Signature of Customer2
     </SignatureSection>
    </customer>
    <customer id="3">
     Some Customer3 Data
     <SignatureSection id="3">
       Signature of Customer1
     </SignatureSection>
    </customer>
    <customer id="3">
     Some Customer4 Data
     <SignatureSection id="4">
       Signature of Customer4
     </SignatureSection>
    </customer>
    <customer id="5">
     Some Customer5 Data
     <SignatureSection id="5">
       Signature of Customer5
     </SignatureSection>
    </customer>
</t>

производит то, что мы предполагаем, может быть желаемым результатом :

 Customer 1 data

 Customer 2 data

 Customer 3 data

 Customer 4 data

 Customer 5 data

       Signature of Customer2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...