XSLT <xsl:decimal-format>-elementet

Definition og brug

<xsl:decimal-format>-elementet definerer de tegn og symboler, der skal bruges, når et tal konverteres til en streng ved hjælp af format-number()-funktionen.

Ikke alle lande bruger de samme tegn til at adskille decimaler fra hele tal eller gruppere tal. Ved hjælp af <xsl:decimal-format>-elementet kan du ændre specifikke tegn til andre symboler.

Dette element er et topniveau-element (top level).

Funktionen format-number() kan henvises til <xsl:decimal-format>-elementet ved hjælp af navnet (navn).

Grammatik

<xsl:decimal-format
name="name"
decimal-separator="char" 
grouping-separator="char" 
infinity="string"
minus-sign="char"
NaN="string"
percent="char"
per-mille="char"
zero-digit="char"
digit="char"
pattern-separator="char"/>

Egenskab

Egenskab Værdi Beskrivelse
name name Valgfri. Angiver navn for dette format.
decimal-separator char Valgfri. Angiver tegn for at adskille decimaler. Standard er ".".
grouping-separator char Valgfri. Angiver tegn for at adskille tusinderskel. Standard er ",".
infinity string Valgfri. Angiver streng, der bruges til at repræsentere uendelig. Standard er "Infinity".
minus-sign char Valgfri. Angiver tegn for at repræsentere negative tal. Standard er "-".
NaN string Valgfri. Angiver streng, der bruges, når værdien ikke er et tal. Standard er "NaN".
percent char Valgfri. Angiver tegn for procenttegn. Standard er "%".
per-mille char Valgfri. Angiver tegn for tusindtalskomma. Standard er "‰".
zero-digit char Valgfri. Angiver tegn for tal 0. Standard er "0".
digit char Valgfri. Angiver tegn, der bruges til at indikere stedet for brug af tal. Standard er #.
pattern-separator char. Valgfri. Angiver tegn, der bruges til at adskille positive og negative mønstre i formateringsmønstret. Standard er ";".

Eksempel

Eksempel 1

Denne eksempel viser, hvordan det formateres som europæisk valuta (bemærk, at tredje parameter i format-number() funktionen refererer til navnet på <xsl:decimal-format> elementet):

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:decimal-format name="euro" decimal-separator="," grouping-separator="."/>
<xsl:template match="/">
<xsl:value-of select="format-number(26825.8, '#.###,00', 'euro')"/>
</xsl:template>
</xsl:stylesheet>

Output:

26.825,80