我有一个体重为Kgs的字段(类型为double或使用其他东西?).在编辑视图中,我希望用户输入数字到千分之一.在显示视图中,我希望Kgs看起来像560.250
试着学习MVC3 + Razor.愿意探索JQuery,使用正则表达式,验证器,视图模板,查看模型......
基于约定的MVC的"魔力"需要习惯.对于使用哪种方法感到困惑.
预先感谢您的帮助.
Dar*_*rov 32
您可以在视图模型上使用数据注释:
[DisplayFormat(DataFormatString = "{0:#,##0.000#}", ApplyFormatInEditMode = true)]
public double? Weight { get; set; }
Run Code Online (Sandbox Code Playgroud)
并在你看来
@Html.EditorFor(x => x.Weight)
Run Code Online (Sandbox Code Playgroud)
将正确格式化输入字段中的值.
另一种可能性是为double类型(~/Views/Shared/EditorTemplates/double.cshtml)编写自定义编辑器模板:
@model double?
@Html.TextBox("", Model.HasValue ? Model.Value.ToString("#,##0.000#") : "")
Run Code Online (Sandbox Code Playgroud)
然后在你看来:
@Html.EditorFor(x => x.Weight)
Run Code Online (Sandbox Code Playgroud)
或者如果您不想覆盖应用程序中所有双重类型的所有模板,您可以将其放入某个自定义模板位置~/Views/Shared/EditorTemplates/MyFormattedDouble.cshtml,然后在您的视图中:
@Html.EditorFor(x => x.Weight, "MyFormattedDouble")
Run Code Online (Sandbox Code Playgroud)
我个人更喜欢第一种使用数据注释来控制double值格式的方法.
| 归档时间: |
|
| 查看次数: |
27333 次 |
| 最近记录: |