I do not want to display a comma after last element
Posted: Fri Feb 27, 2015 9:59 pm
In my schema I have AddressLine1, AddressLine2, AddressLine3 and AddressLine4. When address is added to each AddressLine a comma is inserted to separate the AddressLines. However if only AddressLine1 and AddressLine2 have address, then there should not be a comma after the AddressLine2 because there is nothing else after it.
My output is showing a trailing comma after AddressLine2 even though it should not.
Output
472 Case Ave, Apt 2, Saint Paul, MN, 55106; 123 Beautiful Ocean, Sydney Australia 123456A,
Xml Code
Xslt code
My output is showing a trailing comma after AddressLine2 even though it should not.
Output
472 Case Ave, Apt 2, Saint Paul, MN, 55106; 123 Beautiful Ocean, Sydney Australia 123456A,
Xml Code
Code: Select all
<ProtectedAddresses>
<Address InternalAddressID="1618212013" Type="Non Standard">
<Location Word="HOME">Home</Location>
<AddressLine1>472 Case Ave</AddressLine1>
<AddressLine2>Apt 2</AddressLine2>
<AddressLine4>Saint Paul, MN, 55106</AddressLine4>
<City>Saint Paul</City>
<State>MN</State>
<Zip>55106</Zip>
</Address>
<Address InternalAddressID="1618212014" Type="Foreign">
<Location Word="OTHER">Other</Location>
<AddressLine1>123 Beautiful Ocean</AddressLine1>
<AddressLine2>Sydney Australia 123456A</AddressLine2>
<Foreign>true</Foreign>
</Address>
</ProtectedAddresses>
Code: Select all
<xsl:for-each select="Addresses/Address">
<xsl:for-each select="Address[@InternalAddressID=current()/@InternalAddressID]">
<xsl:if test="AddressLine1">
<xsl:value-of select="AddressLine1"/>
<xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="AddressLine2">
<xsl:value-of select="AddressLine2"/>
<xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="AddressLine3">
<xsl:value-of select="AddressLine3"/>
<xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="AddressLine4">
<xsl:value-of select="AddressLine4"/>
</xsl:if>
<xsl:text>; </xsl:text>
</xsl:for-each>
</xsl:for-each>