1

我的问题与Getting date time always null back to controller in MVC3中的问题非常相似

但是,即使我已经指定了 DataAnnotations,并且还在 datepicker 中指定了格式,当我将表单提交给控制器时,我总是只在我的日期列中将值设为“null”并且它根本没有被保存到数据库。还有什么我不知道的吗?... jquery-1.8.2.js 文件是该帖子中给出的必须文件吗?...有人可以帮我吗?...

我还在chrome 上附加了一个调试器,并检查了 network tab单击提交时正在从 UI 传递日期,但我不知道它在到达控制器之前丢失在哪里?...

更新:

这是在我的模型中:

        [Display(Name = "Checkout Date")]
        [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
        public DateTime? CheckoutDate { get; set; }

这是我的日期选择器:

<script>
   $(document).ready(function () {
     $("#CheckoutDate").datepicker({
     dateFormat: "dd/mm/yy"
    }); 
  });
 </script>

而我的控制器是一个提交动作,将模型作为参数并返回一个 JsonResult ...

4

1 回答 1

0

到目前为止,我已经尝试了您的代码,并且在 Controller Side 中正确地获得了印度格式的日期时间。我已经按照以下方式在视图中实施...

  @using (Html.BeginForm("ActionName", "ControllerName"))
{ 
<div>
    @Html.TextBoxFor(m => m.CheckoutDate)
</div>

<div>
    <input type="submit" class="btn btn-primary" value="submit" />
</div>
}

按照上面的方法尝试我希望你能在控制器端以正确的方式获得日期时间

在控制器方面我希望你有如下

[HttpPost]
    public ActionResult Index(test model)
    {
        DateTime ? dtTime = model.CheckoutDate;
        return View();
    }
于 2013-10-22T06:11:27.670 回答