asp.net-mvc-4 - Kendo ui - 如何将验证与 mvc 模型属性联系起来

标签 asp.net-mvc-4 telerik kendo-ui kendo-asp.net-mvc

阅读此 thread 中的帖子- 由于某些奇怪的原因无法在那里发布问题:(我会在这里问它希望得到解决方案

我写的是不是说我必须像下面这样进行验证..

  1. 我将 html5 属性 (data-required-msg/validationMessage) 添加到文本框和 required 属性中。
  2. 我为无效消息创建了一个跨度,并将其与具有“data-for”属性的字段绑定(bind)在一起。然后消息“请输入姓名”应该出现在该范围内。

问题

  1. 这是处理此问题的唯一方法吗?
  2. 我没有办法显示正确的错误消息(“我想显示的错误消息”),就像以任何方式绑定(bind)到 ViewModel 上的 mvc 属性一样。正如另一位发帖者所说,这是更具可扩展性/可重用性和更好的设计。

使用 data-for="Name"非常脆弱,因为模型字段名称的更改不会反射(reflect)在那里,并且可能会被忘记,从而交付有缺陷的软件。您正在失去类似

的类型安全性
@Html.ValidationMessageFor(m=> m.Name)

代码

public class AViewModel
{
       [Required(ErrorMessage="Error Message I want to show")]
        public string Name { get; set; }
}

<div class="validation-wrapper">
                <div class="input-wrapper">
                    @Html.TextBoxFor(m => m.Name, new { placeholder = "eg. John Smith", data_required_msg="PleaseEnter name", required="required" } )                           
                </div>
                <span class="k-invalid-msg" data-for="Name"></span>
            </div>

干杯, J

最佳答案

为了能够执行您所说的操作,您需要使用适用于 ASP.NET MVC 的 Kendo UI。这样您就可以像以前一样继续使用 DataAnnotations 属性和 Html.ValidationMessageFor() 帮助程序。您需要做的就是在表单之后(或在 document.ready() 上)调用 $('[your_form_selector]').kendoValidator()

关于asp.net-mvc-4 - Kendo ui - 如何将验证与 mvc 模型属性联系起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16211169/

相关文章:

javascript - Telerik RadConfirm 不适用于 asp.net 的 UserControls

wpf - 需要帮助在 Telerik RadControls 和 DevExpress DXperience (WPF) 之间做出决定

javascript - 如何使用 Kendo UI 将参数传递给 HttpHandler?

c# - MVC4 WebApi 在响应 header 中添加 ETag

angular - 如何在剑道组合框中添加工具提示?

kendo-ui - kendo UI网格弹出编辑器模板验证未选取模型验证规则

javascript - 输入上的 keyup 事件在页面加载时触发

asp.net-mvc - 编译 MVC 和预编译 View 并部署到 Azure WebRole

css - 问题 :Menu Hide behind PDF in IE

c# - MVC 4 列表模型绑定(bind)如何工作?