使用MVC/jQuery预填充屏蔽的文本框字段

Rio*_*ams 3 asp.net-mvc jquery masking

最近我一直在经历一个项目,试图消毒几个数据输入(大多数主要是Dates (mm/dd/yyyy)DateTimes (mm/dd/yyyy hh:mm:ss am/pm).

我正在使用digitalBush Masking插件,一切似乎都在用空字段工作.但是 - 当我试图将一个蒙面字段应用于绑定到ViewModel的字段时,我似乎遇到了问题.

例:

HTML:

<%= Html.TextBoxFor(model => model.DateOfBirth})%>
Run Code Online (Sandbox Code Playgroud)

jQuery的:

$("#DateOfBirth").mask("99/99/9999",{placeholder:" "});
Run Code Online (Sandbox Code Playgroud)

我只是好奇,如果任何人对如何实施,目前正在预填充数据从一个视图模型的字段,例如,它会显示为普通的文本框屏蔽任何想法,但是当它被改变了它会被掩蔽的输入做出反应.

Dar*_*rov 6

代替:

<%= Html.TextBoxFor(model => model.DateOfBirth) %>
Run Code Online (Sandbox Code Playgroud)

你可以写:

<%= Html.EditorFor(model => model.DateOfBirth) %>
Run Code Online (Sandbox Code Playgroud)

然后你可以用[DisplayFormat]属性装饰相应的视图模型属性:

[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime DateOfBirth { get; set; }
Run Code Online (Sandbox Code Playgroud)