Как выйти из цикла «для каждого» в XSL, если условие выполнено? , например. Предположим, я хочу, чтобы XSL для отображения адреса квартир, которые имеют (2 спальни и аренда < = 1000), в следующем XML, следующий код XSL:XSLT: Как выйти из цикла «для каждого», если условие выполнено.
<xsl:for-each select="//apartment/apartment_details">
<xsl:if test="bedrooms=$bedrooms and rent <= $budget ">
<!--display apartment address-->
</xsl:if>
</xsl:for-each>
возвратит тот же самый адрес квартиры дважды. Я хочу отобразить адрес квартиры только один раз, даже если для квартиры, которая удовлетворяет условию, несколько.
структура XML:
<apartments>
<apartment>
<address>
<street>....</street>
<city>....</city>
</address>
<apartment_details>
<bedrooms>2</bedrooms>
<bathrooms>2</bathrooms>
<rent>1000</rent>
</apartment_details>
<apartment_details>
<bedrooms>2</bedrooms>
<bathrooms>1</bathrooms>
<rent>900</rent>
</apartment_details>
...
</apartment>
...
</apartments>
Спасибо.
«даже если в квартире есть несколько _____ для квартиры, которые удовлетворяют условию» - кажется, вам не хватает слова. – LarsH
Дубликат http://stackoverflow.com/questions/470045/how-to-break-a-for-each-loop-in-xslt/8507243#8507243 –