Выбор даты в кендо

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

  DateTimeFormatInfo datetimeFormat = new DateTimeFormatInfo();
  datetimeFormat.FullDateTimePattern = "MM.dd.yyyy hh:mm tt"; //(set static for testing)
  Thread.CurrentThread.CurrentCulture.DateTimeFormat = datetimeFormat;

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

$("myForm").kendoValidator(
                {
                    rules: {
                       dateValidation: function(input)
                        {
                            if (input.is("[data-role=datepicker]")) {
                                // My code should be here
                            }
                            return true;
                        }
}});

Любой может помочь мне решить эту проблему.

1 ответ

Решение

Нет необходимости добавлять пользовательское правило, вам нужно установить пользовательский формат в валидаторе кендо следующим образом:

kendo.ui.validator.rules.mvcdate = function (input) {
return input.val() === "" || kendo.parseDate(input.val(), "dd/MM/yyyy") !== null;
}

Этот код вернет true (действительный), если средство выбора даты имеет значение и значение имеет правильный формат (дд / мм / гггг в приведенном выше)

Другие вопросы по тегам