Skip to content Skip to sidebar Skip to footer

How To Validate A Date Is In The Format Yyyy-mm-dd Using Kendo Validator?

I have a kendo date picker that is constructed as follows: $('#date').kendoDatePicker({ format: 'yyyy-MM-dd', footer: ' ', parseFormats: ['MM/dd/yyyy', 'dd/MM/yyyy']

Solution 1:

If you want to validate a date you need to define a rule (no built-in rule).

Try defining:

$("#date").kendoValidator({
    rules: {
        date: function (input) {
            var d = kendo.parseDate(input.val(), "yyyy-MM-dd");
            return d instanceofDate;
        }
    }
});

NOTE: Remember that KendoUI first uses parseFormats option for parsing the date, then converts it to the format option and finally run validations. That's why I use in validation yyyy-MM-dd and not ["MM/dd/yyyy", "dd/MM/yyyy"].

Solution 2:

The answer is:

<script src="@Url.Content("~/Scripts/kendo/2015.2.805/kendo.aspnetmvc.min.js")"></script>
<script type="text/javascript">
    kendo.ui.validator.rules.mvcdate = function (input) {
        //use the custom date format here
        //kendo.parseDate - http://docs.telerik.com/kendo-ui/api/javascript/kendo#methods-parseDatereturn !input.is("[data-val-date]") || input.val() === "" || kendo.parseDate(input.val(), "@(MvcApplication.AppCulture.DateTimeFormat.ShortDatePattern)") !== null;
    };
</script>

Here is more information: http://docs.telerik.com/kendo-ui/aspnet-mvc/validation

Cheers

Post a Comment for "How To Validate A Date Is In The Format Yyyy-mm-dd Using Kendo Validator?"