Kendo UI日期选择器最大日期验证

时间:2014-08-21 11:52:50

标签: kendo-asp.net-mvc

我有一个MVC4的Kendo UI日期选择器扩展。我将最大日期设置为2014年8月31日。如果我们手动输入超过最大日期的日期,则会显示验证消息。消息包含控件的ID。我需要添加自定义消息,我也没有任何模型。

 @(Html.UI().DatePicker()
       .Name("dpReceiptDate")           
       .Value(DateTime.Today)
       .Enable(false)
       .HtmlAttributes(new { style = "width: 100%;" })
       .Events(events => events.Change("dateChange"))  
 )

使用javascript设置最大日期和最小日期的代码是

var receiptDate = $('#dpReceiptDate').data('kendoDatePicker');
var receiptDateVal = receiptDate.value();
receiptDate.min(new Date(receiptDateVal.getFullYear(), receiptDateVal.getMonth(), 1));
receiptDate.max(new Date(receiptDateVal.getFullYear(), receiptDateVal.getMonth() + 1, 0));

验证消息如下所示 enter image description here

我需要一条不包含日期选择器ID的自定义消息。

请提供一个好的解决方案。

提前致谢。

1 个答案:

答案 0 :(得分:1)

你需要使用这样的东西。

$("#MyForm").kendoValidator({
rules: {
    //implement your custom date validation
    dateValidation: function (e) {
        var currentDate = Date.parse($(e).val());
        //Check if Date parse is successful
        if (!currentDate) {
            return false;
        }
        return true;
    }
},
messages: {
    //Define your custom validation massages
    required: "Date is required message",
    dateValidation: "Invalid date message"
}

});