如何应用.input-validation-error适用于MVC4中的kendo编辑器

时间:2013-04-09 10:33:35

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

我正在使用我的MVC4应用程序中的Kendo Editor,并使用

实现了基于模型的验证
 $("form").data("validator").settings.ignore = ":hidden:not(#Text)";
 $.validator.setDefaults({ ignore: [] });

Kendo在TextArea周围构建它的编辑器并将其标记为隐藏字段。现在验证工作正常,但如果验证失败,则不会将.input-validation-error类添加到它。任何人都可以建议我怎么做。

1 个答案:

答案 0 :(得分:0)

重点是输入验证错误类应用于原始隐藏字段...而不是编辑器。您必须拦截valisation fail事件,并且必须手动将此类添加到编辑器中。

拦截验证事件有两种方法。更简单的方法是在传递给setDefaults方法的选项中指定自定义showErrors函数。验证插件文档说明了如何执行此操作。

另一种方法是重新定义验证器对象原型的元素和形式方法......这并不难,但需要您对验证插件有更深入的了解。

我建议使用第一种方法并在showErrors函数中放置一个断点,以便您可以熟悉传递给它的参数的格式。添加自定义项后,别忘了调用默认的showErrors函数。

不要忘记还必须清除验证错误。现在,如果插件不会清除您的自定义错误(可能......因为它们没有附加到输入字段),您也被迫覆盖元素和表单方法,因为如果没有错误,则不会调用showErrors函数在任何情况下都会调用上面的方法,这样你就可以把清算代码放在那里....

我的建议是在开始时集中精力显示错误,并且在您熟悉验证插件的工作方式后,专注于在必要时清除自定义错误(也许它们会被插件自动清除)。 ..不确定插件如何清除其错误)