(编辑器用于名为“ADate”的DateTime属性

我正在尝试这样做,但是它不起作用。

@Html.EditorFor(model => model.ADate, new { cssClass = "date" } )

所以我尝试了这个:
@Html.TextBoxFor(model => model.ADate, new { @class = "date" })

但是它输出type = text ..当然可以。

所以我尝试了一个模板...我在共享文件夹中添加了一个文件夹:
Shared/EditorTemplates

然后创建了一个名为 Date.cshtml 的.cshtml部分 View

现在我到底要放什么呢:O ...

我试图理解很多文章和堆栈溢出条目,但它没有陷入。

目标是在使用“.date” 类的整个应用程序中,将 datepicker 附加到类“.date” 类上。 ,类型从日期更改为文本:(

最佳答案

好的,这是您可以做的:

EditorTemplates文件夹中,创建一个名为DateTime.cshml的模板(如果将其用于日期,该名称将自动解析,否则在使用时必须指定名称)。
然后在其中:

@model System.DateTime

@Html.TextBox(
   string.Empty,
   Model.ToString("yyyy-MM-dd"),
   new { @class="datepicker", @type = "date"})

使用最后一个参数,您可以指定任何html属性(类,数据,类型等)。

然后,您可以像这样使用它:
@Html.EditorFor(x => x.ADate)

如果您选择使用其他名称来命名模板,则可以通过调用另一个重载来指定它:
@Html.EditorFor(x => x.ADate, "MyOtherAwesomeTemplate")

关于c# - 向EditorFor中添加类-razor C#,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20485032/

10-13 04:19