代码之家  ›  专栏  ›  技术社区  ›  Wael Joulani

剑道日期选择器自定义日期格式

  •  1
  • Wael Joulani  · 技术社区  · 11 年前

    我有一个应用程序,允许客户通过设置屏幕设置日期格式。 我更改了当前线程区域性日期格式,并在kendo日期选择器中设置了日期和解析格式。

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

    我的问题是,当我更改日期格式时,客户端验证错误返回的字段应该是日期。 我试图在kendo验证器中设置自定义规则,但这对我没有帮助,因为当我更改日期时,该规则不会被触发。

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

    任何人都可以帮助我解决这个问题。

    1 回复  |  直到 11 年前
        1
  •  4
  •   MohQut    11 年前

    不需要添加自定义规则,您需要在kendo验证器中设置自定义格式,如下所示:

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

    如果日期选择器有一个值,并且该值的格式正确(上面的dd/MM/yyyy),则此代码将返回true(有效)