使用Template控制Editor显示方式

@Html.EditorFor可以由Template决定显示

虽然都是EditorFor,页面上显示却不同,ReleaseDate是一个Jquery DatePicker:

怎么实现的呢?就是Template啦

首先,在Model的对应属性设置DataType:

然后,在Views->Shared->EditorTemplates文件夹下有创建相应DataType的Template,即Date.cshtml
源码如下

@Html.TextBox("", (Model == null) ? string.Empty : String.Format("{0:d}", (string)Model.ToShortDateString()), new { @class = "datefield", @type = "date" })

到这基本完成Template!修改Date.cshtml中的源码,使Date类型的Editor以任何形式显示。

 

另:此例中显示DatePicker需要jquery代码

if (!Modernizr.inputtypes.date) {
    $(function () {
        $(".datefield").datepicker();
    });
}

 

 

posted @ 2014-02-11 17:19  幸运的程序员  阅读(503)  评论(0编辑  收藏  举报