我想在HTML页面中将decimal
数字显示为美元货币。例如,将1209.27显示为 $ 1,209 27 。
我没有在模型中使用[DataType(DataType.Currency)]
,而是直接在视图中设置每个数字的格式:
@Html.Raw(Regex.Replace(Regex.Replace(String.Format("{0:C}", Model.Price), "(?<=\\.)([^.]*$)", "<sup> $1</sup>"), "\\.<sup>", "<sup>"))
是否有一种更有效的方法来实现这种格式,而不是一遍又一遍地重复这种格式?
答案 0 :(得分:5)
您可以考虑编写Razor DisplayTemplate或custom html helper
答案 1 :(得分:0)
使用CSS设置样式。
<style type="text/css">
.price { font-weight: bold;}
.currency {}
.decimals { font-size: 0.6em; font-weight: normal; vertical-align: baseline; top: -0.4em; position: relative; }
</style>
This item costs
<span class="price">
<span class="currency">$</span>5,310<span class="decimals">.79</span></span> Dollars.
在这里工作的小提琴:
https://jsfiddle.net/a3vksgcu/1/
原始解决方案在这里: https://css-tricks.com/forums/topic/solved-a-more-interesting-price-display-using-css/