【问题标题】:How do I set an initial value for a datepicker?如何为日期选择器设置初始值?
【发布时间】:2021-10-18 17:51:03
【问题描述】:

我认为这是:

@Html.EditorFor(model => model.StartDate, new { htmlattributes = new { @class = "datepicker" } })

我试过这个:

@Html.EditorFor(model => model.StartDate, new { htmlattributes = new { @class = "datepicker", @value = "10/18/2021" } })

但它没有效果。如何控制初始日期?

【问题讨论】:

标签: asp.net-core razor bootstrap-4


【解决方案1】:

如果你想用value属性设置初始值,这里有一个工作演示:

开始日期:

[DataType(DataType.Date)]
 public DateTime StartDate { get; set; }

查看:

<input asp-for="StartDate" class="datepicker" value="2021-10-20" />

结果:

【讨论】:

    【解决方案2】:

    最终,它是模型定义。我在几个地方看到过这个解决方案并尝试过,但我尝试不正确。我在模型中有两个日期,我无意中更改了错误的日期,但没有效果。

    最初编写的模型是:

        [DataType(DataType.Date), ErrorMessage = "Date Only"]
        [DisplayFormat(DataFormatString = "{0:MM-dd-yyyy}", ApplyFormatInEditMode = true)]
        [Display(Name = "Starting Date")]
        public DateTime StartDate { get; set; }
    

    解决了什么问题:

        [DataType(DataType.Date), ErrorMessage = "Date Only"]
        [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
        [Display(Name = "Starting Date")]
        public DateTime StartDate { get; set; }
    

    注意顺序中 DataFormatString 的变化。这确实解决了我的问题,如果我在适当的地方进行了更改,我自己也会看到的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多