未在Asp.net MVC的DateTime Picker中设置日期

时间:2019-04-02 10:54:01

标签: c# asp.net-mvc razor datetimepicker bootstrap-datetimepicker

我有一个编辑表单,点击并点击,所有值都分配给相关字段, 我有一个字段是DOB,我尝试在datepicker中分配DOB, 但是DOB不会在datepicker中分配&我将无法理解的错误地方

我正在使用c#使用Asp.net MVC

脚本

<script type="text/javascript" src='https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.0.3/js/bootstrap.min.js'></script>
<link rel="stylesheet" href='https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.0.3/css/bootstrap.min.css'
      media="screen"/>
<!-- Bootstrap -->
<!-- Bootstrap DatePicker -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/css/bootstrap-datepicker.css"type="text/css"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/js/bootstrap-datepicker.js"type="text/javascript"></script>

代码

<div class="row">
    <div class="form-group">
        @Html.LabelFor(model => model.DOB)
        @Html.TextBoxFor(model => model.DOB, new { @class = "form-control", @autocomplete = "off", @id = "SelectedDate" })
    </div>
</div>

JavaScript

 $(function () {
    $("#SelectedDate").datepicker({ dateFormat: 'dd/mm/yy' });
});

enter image description here

请让我知道。

1 个答案:

答案 0 :(得分:4)

更改html

代码

<div class="form-group">
        @Html.LabelFor(model => model.DOB)                                       
        @Html.EditorFor(model => model.DOB, new { htmlAttributes = new { @class = "form-control" } })
        @Html.ValidationMessageFor(model => model.DOB, "", new { @class = "text-danger" })
     </div>

模型

    [DisplayName("Birth Date")]
    [DataType(DataType.Date)]
    [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
    public DateTime DOB { get; set; }

要使用默认的镀铬日期选择器显示日期,您的模型需要两个属性:

  1. [DataType(DataType.Date)]结果
  2. [DisplayFormat(DataFormatString =“ {0:yyyy-MM-dd}”,ApplyFormatInEditMode = true)]。 chrome日期选择器需要格式yyyy-MM-dd

谢谢