在文本框中为mvc中的日期获取null值

时间:2017-11-05 12:36:33

标签: asp.net-mvc date bootstrap-4

我在textboxfor工具中添加了bootstrap日期,也显示了它。

但是,问题是我在控制器中获得空值。

这是我的代码

查看

@using (Html.BeginForm("Create", "StaffRegistration", FormMethod.Post, new { enctype = "multipart/form-data" }))
{   
    @Html.AntiForgeryToken()

    @Html.TextBoxFor(model => model.JoinDate, new { @class = "form-control", placeholder = "DD/MM/YYYY", Name = "date" })
}

脚本文件

$(document).ready(function () {
    var date_input = $('input[name="date"]'); //our date input has the name "date"
    var container = $('.bootstrap-iso form').length > 0 ? $('.bootstrap-iso form').parent() : "body";
    date_input.datepicker({
        format: 'dd/mm/yyyy',
        container: container,
        todayHighlight: true,
        autoclose: true,
    })
})

控制器

public ActionResult Create(StaffRegistrationViewModel staffRegistrationViewModel)
{
   //here is my code
}

现在,当我在控制器端单击按钮时,空值即将到来。[我在调试模式下看到了]

在staffRegistrationViewModel中,JoinDate字段显示空值。

谢谢。

1 个答案:

答案 0 :(得分:1)

一般来说Bootstrap DateTime Picker会像这样实现...... 这样你甚至可以在post action方法中获得所选日期时间的值(在控制器中......)

// View Code
<div id="datefrom" class="input-group date">
 @Html.TextBoxFor(model => model.FromDate, new { @class = "form-control", @readonly = "readonly", style = "position: static;" })
 <span class="input-group-addon">
 <span class="glyphicon glyphicon-calendar"></span>
 </span>
</div>

// Jquery Code
$('#datefrom').datetimepicker({
   format: 'DD/MM/YYYY HH:mm:ss',
   ignoreReadonly: true,
   useCurrent: false});