Kendo日历:如何在变更事件中向控制器发送日期? (MVC扩展)

时间:2013-03-21 18:03:34

标签: ajax kendo-ui kendo-asp.net-mvc

我确实做了以下示例,但无法正常工作:

Controller Home:

namespace KendoUIMvcApplication1.Controllers
{
     public class HomeController : Controller
     {
          public ActionResult Index(DateTime? date)
          {
             //here i use the date bla bla bla

               return View();
          }

          public ActionResult About()
          {
               return View();
          }
     }
}

我的观点:Index.cshtml

<p>
    @Html.Kendo().DatePicker().Name("Calendario").Value(DateTime.Now).Events(e =>e.Change("change"))
</p>


<script type="text/javascript">
    function change() {
        var dado = this.value();
        $.ajax({
            type: "POST",
            url: "/Home/Index", //url
            traditional: false,
            async: false,
            beforeSend: function () {
            },
            data: dado,
            success: function (response) {
            },
            error: function (e) {
                alert("erro");
            }
        });
    }
</script>

为什么当我更改日历上的日期时,控制器上的参数为空? 函数$ Ajax工作正常; var dado有一个日期。

1 个答案:

答案 0 :(得分:5)

尝试将值作为键/值对象发送。 e.g。

data: {date:dado},

此外,您可能需要将日期格式化为方便的ModelBInder格式

e.g。

data:{date:kendo.format("{0:dd/MM/yyyy hh:mm:ss tt}",dado)}