我在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>
谢谢!
答案 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.ui.validator.rules.mvcdate = function (input) {
if ($(input.attr('name')) === 'ExpirationDate') {
return input.val() === "" || kendo.parseDate(input.val(), "dd.MM.yyyy") !== null;
}
return true;
}