0

2つのXSLTテンプレートがあり、それらを1つに組み合わせて、アルファベット順に並べ替える必要があります。

<xsl:template match="properties-for-sale">
  <xsl:for-each select="entry">
    <option value="{name}">
        <xsl:value-of select="name"/>
    </option>
  </xsl:for-each>
</xsl:template>

<xsl:template match="properties-for-rent">
  <xsl:for-each select="entry">
    <option value="{name}">
        <xsl:value-of select="name"/>
    </option>
  </xsl:for-each>
</xsl:template>

これはXSLTでどのように達成できますか?

助けてくれてありがとう!

4

2 に答える 2

2
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" indent="yes"/>

  <xsl:template match="properties-for-sale|properties-for-rent">
    <xsl:for-each select="entry">
      <xsl:sort select="name" order="ascending"/>
      <option value="{name}">
        <xsl:value-of select="name"/>
      </option>
    </xsl:for-each>
  </xsl:template>
</xsl:stylesheet>

|複数のXPathに使用します。値の並べ替えに使用し<xsl:sort>ます。

それについてもっと知りたい場合のリファレンス!

http://www.w3schools.com/xsl/el_sort.asp

于 2012-12-04T12:52:43.003 に答える
1

|マッチングに演算子を使用できます

<xsl:template match="properties-for-sale|properties-for-rent">
  <xsl:for-each select="entry">
    <option value="{name}">
        <xsl:value-of select="name"/>
    </option>
  </xsl:for-each>
</xsl:template>
于 2012-12-04T12:22:30.957 に答える