相关疑难解决方法(0)

MVC4 DataType.Date EditorFor不会在Chrome中显示日期值,在Internet Explorer中也不错

我在我的模型中使用DataType.Date属性,在我的视图中使用EditorFor.这在Internet Explorer 8Internet Explorer 9中运行良好,但在谷歌浏览器中它显示日期选择器,而不是显示值,它只是在褪色的灰色文本中显示"月/日/年".

为什么Google Chrome不会显示价值?

模型:

[DataType(DataType.Date)]
public Nullable<System.DateTime> EstPurchaseDate { get; set; }
Run Code Online (Sandbox Code Playgroud)

视图:

<td class="fieldLabel">Est. Pur. Date</td>
<td class="field">@Html.EditorFor(m=>m.EstPurchaseDate)</td>
Run Code Online (Sandbox Code Playgroud)

铬

IE浏览器

asp.net-mvc editorfor asp.net-mvc-4

197
推荐指数
5
解决办法
17万
查看次数

检查DateTime类型的值在视图中是否为空,如果为null则显示为空

从我的控制器我已经通过值模块来查看

    public ActionResult Details(long id, string owner)
    {
        var module = _ownedModuleRepository.GetModuleDetails(id, owner);

        return View(module);
    }
Run Code Online (Sandbox Code Playgroud)

我已经在视图中显示了它包含的值如下

    <dt>ID</dt>
    <dd>@Model.Id</dd>

    <dt>Module ID</dt>
    <dd>@Model.ModuleId</dd>

     <dt>Owner</dt>
    <dd>@Model.Owner</dd>

    <dt>Module Type</dt>
    <dd>@Model.TypeName</dd>

    <dt>Module Kind</dt>
    <dd>@Model.KindName</dd>

    <dt>Ownership Start Date</dt>
    <dd>@Model.Start</dd>

    <dt>Ownership End Date</dt>
    <dd>@Model.End</dd>

    @foreach (var properties in Model.Properties)
    {
        <dt>Property Name</dt>
        <dd>@properties.Name</dd>
        <dt>Property Value</dt>
        <dd>@properties.Value</dd>
    }
Run Code Online (Sandbox Code Playgroud)

目前@ Model.End为null,它是DateTime类型,我在viewmodel中将其设置为可为空.因为它是null,所以我正在看到它

在此输入图像描述

如您所见,所有权结束日期的值是从下面获取属性名称的值.如果@ Model.End为null,如何将其设置为空

编辑1:

我的模特

public class OwnedModuleDetails
{
    public long Id { get; set; }

    public string ModuleId { get; set; …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc nullable view asp.net-mvc-4

4
推荐指数
2
解决办法
1万
查看次数

标签 统计

asp.net-mvc ×2

asp.net-mvc-4 ×2

editorfor ×1

nullable ×1

view ×1