Kendo Scheduler RecurrenceEditorFor установить начало на выбранную дату

Я сделал CustomEditorTemplate для планировщика. И есть одна вещь, которая не работает должным образом.

Для RecurrenceEditorFor у него есть End On, где вы можете выбрать дату. Но для нашего RecurrenceEditorFor он автоматически установил Start на текущую дату, а не на дату, выбранную планировщиком.

Наш RecurrenceEditorFor выглядит так:

<div data-container-for="recurrenceRule" class="k-edit-field">
      @(Html.Kendo().RecurrenceEditorFor(model => model.RecurrenceRule).Messages(m => SchedulerHelper.MessageLocaliztion(this, m))
      .HtmlAttributes(new { data_bind = "value:recurrenceRule" })
      )
</div>

Я мог бы, конечно, установить начало на конкретную дату,

<div data-container-for="recurrenceRule" class="k-edit-field">
      @(Html.Kendo().RecurrenceEditorFor(model => model.RecurrenceRule).Messages(m => SchedulerHelper.MessageLocaliztion(this, m))
      .HtmlAttributes(new { data_bind = "value:recurrenceRule" })
      .Start(new DateTime(2014,8,4))
      )
</div>

, но это не сработает, если я выберу дату до этой.

ДАЖЕ, если я выберу дату после этой текущей даты, она даст мне эту дату. Так что дело не в том, что эта текущая дата является минимальной, а в том, что это должна быть статическая дата, установленная где-то или каким-то образом.

Я также пытался установить текст в поле ввода с помощью некоторого JavaScript, но это не позволит выбрать дату до текущей даты. И это также испортит RecurrenceRule.

Я вижу, что это работает стандартно, но не для нас, после того как мы добавили CustomEditorTemplate. Мы что-то упустили или сделали что-то не так?


person Moelbeck    schedule 17.09.2014    source источник


Ответы (1)


Я нашел обходной путь для этого:

Я добавил метод щелчка в div Recurrencerule:

$("div[name='RecurrenceRule']").on("click", function () {
    window.changerecurrenceStart();
 });

и методchangerecurrenceStart :

  function changerecurrenceStart()
{
    var date = $("#startDate").data("kendoDatePicker")._value;

        $("#RecurrenceRule").data("kendoRecurrenceEditor").options.start = date;
        $("#RecurrenceRule").data("kendoRecurrenceEditor").options.value = date;        

}

Это хорошо сработало для меня.

person Moelbeck    schedule 06.10.2014