0

この 2 つのレシピを表に出力しようとしましたが、できません。最初にしか表示されません。両方のレシピを表に出力するにはどうすればよいですか

これは私のxmlです:

<region id="southwest">
        <name>Southwest</name>
        <recipe id="1" author="" kitchen="en" origin="en">  
            <title>Chicken Fiesta Salad</title>
            <type>main</type>
            <difficulty>middle</difficulty>
            <time>90 min.</time>
            <portions>8</portions>
        </recipe>
        <recipe id="2" author="" kitchen="en" origin="en">  
            <title>Cupcakes</title>
            <type>dessert</type>
            <difficulty>hard</difficulty>
            <time>60 min.</time>
            <portions>8</portions>
        </recipe>       
    </region>

アリこれは私のxslです:

<table border="1">
    <tr>
      <th>Title</th>
      <th>Region</th>
      <th>Type</th>
      <th>Difficulty</th>
      <th>Time</th>
      <th>Portions</th>
    </tr>
<xsl:for-each select="region">
    <tr>
      <td><xsl:value-of select="recipe/title"/></td>
      <td><xsl:value-of select="name"/></td>
      <td><xsl:value-of select="recipe/type"/></td>
      <td><xsl:value-of select="recipe/difficulty"/></td>
      <td><xsl:value-of select="recipe/time"/></td>
      <td><xsl:value-of select="recipe/portions"/></td>
      </tr>
</xsl:for-each>
</table>

誰でも私を助けてもらえますか?

4

1 に答える 1

0

for-each地域要素ではなくレシピ要素を上書きする必要があります

<xsl:for-each select="region/recipe">

そして、xpath 式を適切に調整します。

  <td><xsl:value-of select="title"/></td>
  <td><xsl:value-of select="../name"/></td>
于 2013-02-04T23:27:15.857 に答える