我已经在我的MVC4项目中在所有html控件中实现了JQuery UI Validation插件,这个插件非常好用。现在我想将这个pugin用于一些Kendo UI控件,如kendo datepicker或kendo autocomplete等。
JQuery UI验证在我的下面代码中运行正常 根据此网址http://posabsolute.github.io/jQuery-Validation-Engine/
@Html.TextBoxFor(Function(x) Model.EstimatedDt, New With {.id = "kdatepicker",.class = "validate[required]"})
现在我用kendo UI datepicker替换
@(Html.Kendo().DatePicker().Name("kdatepicker").HtmlAttributes(new with{.Class = "validate[required]"}))
但这不起作用。这会给出错误消息TWICE,甚至在我输入一些值之后,控件会出现一个工具提示错误消息并仍显示一个错误工具提示。
我检查了视图源,它就像这样创建 -
<input class="validate[required]" id="kdatepicker" name="kdatepicker" type="date" /><script>
jQuery(function(){jQuery("#kdatepicker").kendoDatePicker({"format":"M/d/yyyy","min":new Date(1900,0,1,0,0,0,0),"max":new Date(2099,11,31,0,0,0,0)});});
</script>
请在我失踪的地方帮助我。 Jquery UI ValidationEngine不能与Kendo UI控件一起使用吗?
由于 Jyo
答案 0 :(得分:1)
找到答案 - 我们需要使用jquery函数单独添加它,而不是添加内联的validate类。
上
@(Html.Kendo().DatePicker().Name("kdatepicker").HtmlAttributes(new with{.Class = "validate[required]"}))
解决方案
@(Html.Kendo().DatePicker().Name("kdatepicker"))
$(function () {
$("#kdatepicker").addClass("validate[required]");
}
原因是如果我们将其添加到内联中,它会添加两次控件和容器。
希望这有助于某人.. 快乐编码:)