为什么只有一个日期从视图转移到控制器?

问题描述 投票:-1回答:1

我有一个简单的账单创建表格。我在这个表单上有两个日期字段。

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

在视图中我有两个字段(datepickers):

<div class="form-group">
    <label class="col-sm-2 control-label">From date:</label>
    <div class="col-sm-6">
        @Html.TextBoxFor(m => m.FromDate, new { @class = "form-control date-pickerFrom", placeholder = "Enter Drop-off date here..." })
    </div>
</div>

<div class="form-group">
    <label class="col-sm-2 control-label">To date:</label>
    <div class="col-sm-6">
        @Html.TextBoxFor(m => m.ToDate, new { @class = "form-control date-pickerTo", placeholder = "Enter Drop-off date here..." })
    </div>
</div>

在视图的最后,我有两个日期选择器的JavaScript函数:

$(function () {
    $('.date-pickerFrom').datepicker({
        dateFormat: "dd/mm/yy"
    });
    $('.date-pickerTo').datepicker({
        dateFormat: "dd/mm/yy"
    });
});

当我确认我的表单时,我只在“从日期”字段的控制器中获得正确的日期值。 “迄今为止”的值始终为01/01/0001。知道我做错了吗?

谢谢你,祝你有美好的一天!

javascript c# asp.net-mvc datetimepicker
1个回答
0
投票

将您的视图更改为:

<div class="form-group">
    <label class="col-sm-2 control-label">From date:</label>
    <div class="col-sm-6">
         @Html.EditorFor(m => m.FromDate, new { htmlAttributes = new { @id = "datepickerFrom", @class = "form-control", @placeholder = "Enter Drop-off date here..."}})
    </div>
</div>

<div class="form-group">
    <label class="col-sm-2 control-label">To date:</label>
    <div class="col-sm-6">
         @Html.EditorFor(m => m.ToDate, new { htmlAttributes = new { @id = "datepickerTo", @class = "form-control", @placeholder = "Enter Drop-off date here..."}})
    </div>
</div>

并在您的JavaScript中调用它们:

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

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

为每个日期选择器分配一个id,它应该适合你。

© www.soinside.com 2019 - 2024. All rights reserved.