XSLT <xsl:decimal-format> 元素
定义和用法
<xsl:decimal-format> 元素定义了当通过 format-number() 函数把数字转换为字符串时,所要使用的字符和符号。
Không phải tất cả các quốc gia đều sử dụng cùng một ký tự để phân cách phần số thập phân và phần nguyên, hoặc để nhóm số. Bằng cách sử dụng yếu tố <xsl:decimal-format>, bạn có thể thay đổi ký tự cụ thể này thành ký tự khác.
Yếu tố này là yếu tố cốt lõi (top level).
Hàm format-number() có thể được tham chiếu bằng tên (name) của yếu tố <xsl:decimal-format>.
Ngữ pháp
<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"/>
Thuộc tính
Thuộc tính | Giá trị | Mô tả |
---|---|---|
name | name | Tùy chọn. Định nghĩa tên cho định dạng này. |
decimal-separator | char | Tùy chọn. Định nghĩa ký tự cho dấu chấm số. Mặc định là ".". |
grouping-separator | char | Tùy chọn. Định nghĩa ký tự để phân cách hàng ngàn. Mặc định là ",". |
infinity | string | Tùy chọn. Định nghĩa chuỗi để biểu thị vô cùng. Mặc định là "Infinity". |
minus-sign | char | Tùy chọn. Định nghĩa ký tự cho giá trị âm. Mặc định là "-". |
NaN | string | Tùy chọn. Định nghĩa chuỗi được sử dụng khi giá trị không phải là số. Mặc định là "NaN". |
percent | char | Tùy chọn. Định nghĩa ký tự cho dấu phần trăm. Mặc định là "%". |
per-mille | char | Tùy chọn. Định nghĩa ký tự cho dấu phần trăm. Mặc định là "‰". |
zero-digit | char | Tùy chọn. Định nghĩa ký tự cho số 0. Mặc định là "0". |
digit | char | Tùy chọn. Định nghĩa ký tự, ký tự này được sử dụng để chỉ ra nơi cần sử dụng số. Mặc định là #. |
pattern-separator | char. | Tùy chọn. Định nghĩa ký tự, ký tự này được sử dụng để phân cách giữa chế độ dương và âm trong mẫu định dạng. Mặc định là ";". |
Mô hình
Ví dụ 1
Dưới đây là ví dụ minh họa cách định dạng thành tiền tệ châu Âu (xin lưu ý rằng tham số thứ ba của hàm format-number() tham chiếu đến tên của yếu tố <xsl:decimal-format>):
<?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>
Kết quả xuất ra:
26.825,80