0

我有一个使用 html 助手的表单,如下所示:

@using (Html.BeginForm("GuardarCliente", "Cliente"))
{
    @Html.LabelFor(m => m.FechaDeNacimiento)
    @Html.TextBoxFor(m => m.FechaDeNacimiento, new { @class = "form-control", placeholder = "Fecha de Nacimiento...", style = "width:74%; " })
    <div class="row">
        @Html.ValidationMessageFor(m => m.FechaDeNacimiento)                                
    </div>                            
    @Html.HiddenFor(m => m.Id)
    @Html.AntiForgeryToken()

   <button class="btn btn-primary">Save</button>

}

但我想将此输入转换为剑道日期时间选择器,如下所示:

 $("#FechaDeNacimiento").kendoDateTimePicker({
    value: new Date(),
    culture: "es-ES",
    dateInput: true
 });

然后当我单击保存按钮时,控制器中发送空值,这是为什么呢?如何使用 jQuery 解决此问题,而不使用剑道的 ASP.NET MVC 包装器?

4

2 回答 2

0

您的 HTML 表单中有input元素吗?你需要这样的东西:

<input id="FechaDeNacimiento" style="width: 74%" />

或者,修改您现有的剃须刀代码以添加id属性:

@Html.TextBoxFor(m => m.FechaDeNacimiento, new { @class = "form-control", id = "FechaDeNacimiento", placeholder = "Fecha de Nacimiento...", style = "width:74%; " })
于 2017-10-19T19:27:52.177 回答
0

我不确定 ASP.Net 是否id在您的元素中呈现属性,但试试这个:

$("#@Html.IdFor(m => m.FechaDeNacimiento)").kendoDateTimePicker({ ...

如果这不起作用,请自行设置id

@Html.TextBoxFor(m => m.FechaDeNacimiento, new { id = "FechaDeNacimiento"... })

我认为您的小部件初始化没问题。

于 2017-10-19T19:03:52.630 回答