Атрибуты в XLS - как я могу получить их из XML и добавить в сгенерированный HTML - PullRequest
0 голосов
/ 21 февраля 2011

У меня есть этот XML, возвращенный из события ajax:

<result>
    <row id="0">
        <column description="Publication ID" id="PUBLICATIONID" name="ID">72</column>
        <column description="Paper name" id="ADBPMAPPAPERNAME" name="PAPER_NAME">NAME</column>
        <column description="Paper Reference" id="ADBPMAPPAPERREF" name="PAPER_REF">PAPER_REF</column>
    </row>
</result>

На самом деле, в исходном XML много строк, это простой. Я хочу заполнить таблицу, и я делаю это:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
<html>
    <body>
        <table>
            <tr bgcolor="#9acd32">
            <th>ID</th>
            <th>Name</th>
            <th>Reference</th>
            </tr>
            <xsl:for-each select="result/row">
                <tr>
                    <td><xsl:value-of select="ID"/></td>
                    <td><xsl:value-of select="PAPER_NAME"/></td>
                    <td><xsl:value-of select="PAPER_REF"/></td>
                </tr>
            </xsl:for-each>
        </table>
    </body>
</html>
</xsl:template>
</xsl:stylesheet>

Мой вопрос: как я могу добавить к сгенерированному HTML-коду атрибут «id» для каждого «tr» таблицы? Теперь лучше объяснить, что XLS делает это:

<tr>
    <td></td>
    ...
</tr>

Когда я хочу сделать это:

<tr id="ROW_ID_PRESENTS_IN_XML">
    <td></td>
    ...
</tr>

Спасибо.

1 Ответ

1 голос
/ 21 февраля 2011
<tr id="{@id}">

Конечно, вы можете использовать любой XPath внутри {}.

Это, кстати, сокращение для

<tr>
  <xsl:attribute name="id">
    <xsl:value-of select="@id" />
  </xsl:attribute>
...