如何有效的日期格式dd.MM.yyyy KENDO MVC

时间:2015-11-12 08:56:45

标签: asp.net-mvc kendo-ui kendo-datetimepicker

我在kedno UI中验证此日期格式时遇到问题:dd.MM.yyyy 对于我的文化(CS-CZ),剑道使用此模式:d. M. yyyy,但主要使用的是格式dd.MM.yyyy

我尝试过everythnik但还没有成功:/

我的模特:

public DateTime? ExpirationDate { get; set; }

我的剑道形式:

<div class="form-group">
@Html.LabelFor(model => model.ExpirationDate, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
    <div class="checkbox">
        @(Html.Kendo().DatePickerFor(model => model.ExpirationDate)
          .Name("ExpirationDate")
          .Culture("cs-CZ")
          .HtmlAttributes(new { style = "width:150px" })
        )
        @Html.ValidationMessageFor(model => model.ExpirationDate, "", new { @class = "text-danger" })
    </div>
</div>

谢谢!

3 个答案:

答案 0 :(得分:1)

使用Javascript函数验证:

function IsValidDate(inputDate) {
    if (kendo.parseDate(inputDate) == null) {
        return false;
    }
    else {
        return true;
    }
}

在视图中使用此

@( Html.Kendo().DatePicker()
     .Name("FirstMODate")
     .Format("dd.MM.yyyy")
     .ParseFormats(new string[] { "dd.MM.yyyy" })
     .Culture("cs-CZ")
     .HtmlAttributes(new { style = "width:100px" })
)

答案 1 :(得分:0)

试试这个:

DatePickerFor(model => model.ExpirationDate).Format("{0:dd.MM.yyyy}");

答案 2 :(得分:0)

在web配置中,system.web部分配置您的文化

<globalization uiCulture="cs-CZ" culture="cs-CZ" />

在布局中,您需要包含kendo culture javascript文件

<script src="@Url.Content("~/Scripts/kendo/2015.3.930/cultures/kendo.culture.cs-CZ.min.js")"></script>

并添加javascript代码

$(function () {
    kendo.culture("cs-CZ");
});

Kendo documentation

或尝试为日期输入添加自定义规则:

kendo.ui.validator.rules.mvcdate = function (input) {
        if ($(input.attr('name')) === 'ExpirationDate') {
            return input.val() === "" || kendo.parseDate(input.val(), "dd.MM.yyyy") !== null;
        }
        return true;
    }