2009-02-05 7 views
2

Nous travaillons sur une page Web qui devrait pouvoir afficher les prix tels que les espaces sont les séparateurs de groupes et les virgules sont les séparateurs décimaux. Par exemple, la valeur 1234567.89 doit être 1 234 567,89. (Nous utilisons actuellement   donc nous obtenons un espace insécable.)Problèmes de format XML lors de l'utilisation des séparateurs

Cela semble être le bon XSL pour le faire, et ça marche presque, mais je reçois un "." caractère après le reste de celui-ci. Donc, je me retrouve avec "1 234 567,89." au lieu de "1 234 567,89".

<?xml version='1.0' encoding='iso-8859-1'?> 

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:fo="http://www.w3.org/1999/XSL/Format" 
xmlns:msxsl="urn:schemas-microsoft-com:xslt" 
xmlns:hsi="http://www.myfakecompany.com/fakey" 
extension-element-prefixes="msxsl hsi"> 

    <xsl:decimal-format name="euro" 
     decimal-separator="," 
     grouping-separator="&#160;"/> 

    <xsl:template match="/"> 

    <xsl:value-of select="format-number(1234567.89, '#&#160;###.##;(#&#160;###.##)', 'euro')"/> 

    </xsl:template> 
</xsl:stylesheet> 

Des idées?

Répondre

3

La chaîne de format est appliqué après le séparateur décimal est réglé, vous devez donc changer pour:

'#&#160;###,##;(#&#160;###,##)' 

à savoir avec des virgules au lieu de périodes.

Questions connexes