我有一个 MVC4 的 Kendo UI 日期选择器扩展。我会回复这个剑道演示,其中有 2 个日期选择器,如果我在“开始日期”中输入的日期大于“结束日期”,剑道验证器必须显示错误。
剑道的验证不显示结束日期的值大于开始日期的值的消息,
这是 2 字段日期选择器的剃须刀代码:
<div class="row">
<div class="col-md-4">
@(Html.Kendo().DatePickerFor(m => m.StartDate)
.Format("dd/MM/yyyy")
)
</div>
<div name="DataPeriodo" class="col-md-8">
@(Html.Kendo().DatePickerFor(m => m.EndDate)
.Format("dd/MM/yyyy")
.HtmlAttributes(new { data_greaterdate_field = "StartDate", data_greaterdate_msg = "Retire date should be after Hire date" })
)
</div>
</div>
这是“greatherThan”验证的测试:
$(document).ready(function () {
var container = $('form');
kendo.init(container);
container.kendoValidator({
rules: {
greaterdate: function (input) {
if (input.is("[data-greaterdate-msg]") && input.data("kendoDatePicker").value() != "") {
var date = kendo.parseDate(input.data("kendoDatePicker").value()),
otherDate = kendo.parseDate($("#StartDate").data("kendoDatePicker").value());
//The test for understand if the code work.
alert(otherDate == null || otherDate.getTime() < date.getTime());
return otherDate == null || otherDate.getTime() < date.getTime();
}
return true;
}
}
});
});
我尝试创建一个小提琴,但在我的 asp.net mvc 解决方案工作时单击按钮不会触发验证并显示测试警报。
问题是测试正确地显示了带有测试的警报(真或假),但与剑道的演示不同,它没有显示属性“data-greaterdate-msg”中定义的错误。
更新
我没有找到任何解决方案。我选择了 FoolProof 库,我只验证服务器端。