Pau*_*nza 17 format asp.net-mvc html-helper
我试图使用强类型视图的值格式化ASP.Net MVC的TextBoxFor呈现的日期.日期可以为空,所以如果它为null我想看到一个空白值,否则我希望以MM/dd/yyyy格式看到它.
<%= Html.TextBoxFor(model => model.BirthDate, new { style = "width: 75px;" })%>
Run Code Online (Sandbox Code Playgroud)
谢谢,
Paul Speranza
Dav*_*enn 25
您可以使用自定义编辑器模板而Html.EditorFor()
不是自定义编辑器模板来保持强类型Html.TextBoxFor()
.
在/ Views/Shared文件夹中创建一个新的EditorTemplates文件夹,并添加一个名为DateTime.ascx的新MVC 2 View用户控件.添加以下内容
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.DateTime?>" %>
<%= Html.TextBox("", (Model.HasValue ? Model.Value.ToString("MM/dd/yyyy") : string.Empty)) %>
Run Code Online (Sandbox Code Playgroud)
然后在你的视图中使用
<%= Html.EditorFor(model => model.BirthDate)%></p>
Run Code Online (Sandbox Code Playgroud)
不要担心"",命名仍然可以正常工作.
如果要以不同的区域性格式将DateTime显示为默认的应用程序区域,则需要更改区域性信息,或者创建自定义模型绑定器,以便在回发DateTime时使模型绑定起作用.
joy*_*ym8 10
MVC4 http://msdn.microsoft.com/en-us/library/hh833694.aspx
@Html.TextBoxFor(model => model.YOUR_DATE, "{0:MM/dd/yyyy}")
Run Code Online (Sandbox Code Playgroud)
wom*_*omp -3
您是否尝试过仅传递您想要的日期格式?
Html.TextBoxFor(model => model.BirthDate.ToString("MM/dd/yyyy"),
new { style = "width: 75px;" })
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
23766 次 |
最近记录: |