Telerik DatePicker与部分视图冲突



我正在做一个使用Telerik DatePicker的项目。应用程序在共享相同字段名的部分视图之间切换。DatePicker要求Name()指定的名称作为数据模型中字段的名称。(据我所知,调用。value (Model.DataField)是多余的。)

@(Html.Telerik().DatePicker()
    .Name("DataField")
    .ShowButton(true)
    .Value(Model.DataField))

实际情况是,控件以DataField的id创建。对于相同的字段名,有两个偏导数,就有两个相同的id。一个工作(第一个显示),另一个死了。

我试过将.HtmlAttributes(new { id="DataField_wrapper" })添加到阵容中,但它没有改变有问题的id。这个id显示在包装控件的dev中:

<div class="t-widget t-datepicker" id="DataField_wrapper">
    <div class="t-picker-wrap">
        <input class="t-input" .... id="DataField" name="DataField" type="text">

使用jQuery通过#DataField抓取元素,一个将有.data("tDatePicker"),而另一个将没有。

是否有一个体面的方法来让这两个控制工作?

调用HtmlAttributes来设置id设置包装器div的值。InputHtmlAttributes是需要的!这会影响实际的输入控制,从而可以分配唯一的id

@(Html.Telerik().DatePickerFor(x => Model.DataField)
    .InputHtmlAttributes(new {id="UniqueID"}))

这个收益率:

<div class="t-widget t-datepicker">
    <div class="t-picker-wrap">
        <input class="t-input" .... id="UniqueID" name="DataField" type="text">

最新更新