[英]How to format decimal using JsRender templates
我在cshtml页面中使用JsRender模板。 我的数据中有一些十进制值,想要在逗号后显示2个数字,例如17,89或3,00。 当我的数据中有3个时,模板中仅显示3个。
如何格式化十进制数据?
模板中的一个小例子显示了我如何使用数据{{> rate}}
谢谢
如果保证rate
是一个数字,则可以使用JavaScript toFixed()
这样:
{{:rate.toFixed(2)}}
如果rate
可以是字符串,则可以通过将其强制为数字
{{:(+rate).toFixed(2)}}
如果要更好地分离代码和标记,可以定义一个转换器 :
$.views.converters("dec",
function(val) {
return (+val).toFixed(2);
}
);
然后写:
{{dec:rate}}
您甚至可以使转换器更智能,并接受places=n
属性来配置小数位数:
$.views.converters("dec",
function(val) {
return (+val).toFixed(this.tagCtx.props.places || 2);
}
);
然后可以选择指定小数位数:
{{dec:rate places=3}}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.