This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Accessing attributes


Hello Carlos,

both answers until now seem to be incorrect. I assume, that you are only missing current():

<xsl:when test="/site/dadosPasseio/correlato/item[@correlato = current()/@idPasseio]">

A snippet of the corresponding XML often will help, but here it was easy, because you are not the first with this problem.

May I suggest you a shorter version in general:

<xsl:for-each select="site/passeio/item">
<option value="{@idPasseio}">
<xsl:if test="/site/dadosPasseio/correlato/item[@correlato = current()/@idPasseio]">
<xsl:attribute name="selected">selected</xsl:attribute>
</xsl:if>
</option>
</xsl:for-each>

Furthermore you avoid duplicate code.

Regards,

Joerg

Carlos Durand wrote:
Hi all,

How can I access an attribute value inside an if and
for-each functions?

For example

<xsl:for-each select="site/passeio/item">


<xsl:choose>
	<xsl:when
test="/site/dadosPasseio/correlato/item[@correlato =
@idPasseio]">
		<option value="{@idPasseio}"
selected="selected"><xsl:value-of
select="@passeio"/></option>
	</xsl:when>
	<xsl:otherwise>
		<option value="{@idPasseio}" ><xsl:value-of
select="@passeio"/></option>
	</xsl:otherwise>
</xsl:choose>



</xsl:for-each>

@correlato belongs to if and @idPasseio belongs to
for-each...

Thanks

Durand

XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]