需要使用
Html.TextBoxFor 辅助器方法显示数值数据
model中的值是 8925.000000
显示的时候,需要只保留两位小数
不知该如何实现。希望 指点一二。谢谢
不能使用Html.EditorFor() 因为需要为生成的控件 指定HTML特性
另外网上找到一个方法
@Html.TextBoxFor(model => model.StartDate, new { Value = String.Format("{0:yyyy-MM-dd}", Model.StartDate)})
可是自己这样做,发现没有任何效果
然后,自己试验了下,如下
@Html.TextBoxFor(model => model.StartDate, new { Value = 123 , Model.StartDate)})
网上的方法说能行,但是自己试验的结果 却完全没有效果 生成的HTML,控件的值 还是model中的值
首先,对HtmlHelper添加扩展应该是理论上最佳的方案。
如果想快速显示,可以试试如下写法:
@Html.TextBoxFor(model => model.StartDate, new { Value = Model.StartDate.ToString("yyyy-MM-dd")}),
这句话的最后的参数是说:强制更改控件的value属性,注意,这个Value不能小写。
嗯 十分感谢,这个方法之前从网上也找到了,但是实验失败
经大侠指点 Value的V大写了,就成功了,哎 ,自己之前根本没想到是这个问题,十分感谢
@算了: :)
可以考虑对HtmlHelper添加扩展方法,专门来处理这种数据类型。
参考:http://blog.csdn.net/limlimlim/article/details/20620717
谢谢了,提供了一种思路,十分感谢
@Html.TextBoxFor(m => m.Total, "{0:0.00}")
很遗憾提供的方法 实验后,不起作用。。。。。。
在我的项目中起作用了
model.field变为字符串
这个,还真不能这么做。。。。。
我是使用EF code first访问数据库的
且Model使用使用 Ef prow tool 生成的
修改的话 会与 数据库 表的类型不一致的。。。。。。。。。。。。。。。。。
这样
@Html.TextBoxFor(m => m.Birthday,"{0:yyyy-MM-dd}", new { @class = "m-wrap small", @readonly = "true" })
就可以了