MVC3 中的 IValidatableObject - 客户端验证

2024-03-26

使用 MVC3,您可以使用两种新机制来添加自定义验证。它们是 (1) ValidationAttribute 子类或 (2) 实现 IValidatableObject。

ValidationAttribute 允许您通过实现 IClientValidatable(并通过 jQuery 注册新的适配器和方法)相对简单地添加客户端验证。

IValidatableObject 更适合无法重用的一次性验证要求。它还会导致代码稍微简单一些。因此,它是我在多种情况下的选择。不幸的是,我没有看到使用此方法实现客户端验证的简单方法。

所以问题是我缺少什么以及在使用 IValidatableObject 时如何获得 JS 验证?


由于我在这里没有得到(有效)答案,我询问了微软的几个人,他们确认目前不可能。

布拉德·威尔逊:

此时,只有属性级别验证器可以发出客户端 验证(因为这与输入的想法更加一致) 以浏览器的形式进行验证...没有“模型”可言 的,从浏览器的角度来看)。

斯图尔特·韭菜:

我不相信你可以将客户端验证与 验证对象

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MVC3 中的 IValidatableObject - 客户端验证 的相关文章

  • 无法安装 MvcMailer

    我尝试通过在程序包管理器控制台中输入命令 Install Package MvcMailer 来安装 Mvc Mailer 但收到以下错误消息 Successfully installed MvcMailer 1 1 Successfull
  • Android 表单验证 UI 库

    有iOSUS2表单验证器 https github com ustwo US2FormValidator用于用户输入验证的库 见下图 我认为该库比默认情况下在某些内容未验证时弹出警报更好 我正在寻找如何在 Android 上做这样的事情 有
  • 为什么 Html.Label() 不适用于句点?

    我使用 Html Label strings 输出一些字符串 当我向它传递一个带有句点的值时 它只输出空格 Html Label 公司 e g 公司是一个动态值 如果值为 Bill Co 则有效 但如果为 Bill Co 则无效 唯一的区别
  • HttpContext.Current.Request.Form 复选框

    我将表单发布到 MVC 控制器 我想在其中处理用户在类似 html 结构的网格上所做的一些更改 我在视图中为每一行呈现了呈现为简单 HTML 的复选框
  • 在 MVC 中重用 WPF ViewModel 是否可行?

    我们有一个用 WPF WCF 编写的富客户端应用程序 并打算在 ASP net 中创建一个配套网站 如果可能 使用 MVC 我被要求弄清楚我们当前的代码库中有多少是可以重用的 由一个单独的团队 而且我对 ASP net 几乎没有经验 我们将
  • 在哪里以及如何为我的 asp.net MVC 3 Web 应用程序定义

    我想将自定义错误设置为 true 以防止用户查看有关我的应用程序的详细信息 但我找不到应该在哪里写这个
  • 在 SmartWizard 中后退时跳过验证

    我正在使用 SmartWizard 2 0 link http techlaboratory net products php product smartwizard 并且当用户点击 上一页 按钮或以任何方式在表单中向后移动时 我需要停止验
  • 如何选择性地呈现 ASP.Net MVC 3 中的某个部分?

    在我的网站上 我有一个部分 浮动侧边栏 我只想为一部分用户 管理员 呈现该部分 我希望我可以将逻辑放入主布局中 以确定是否应显示该部分 但如果未呈现该部分 则会导致页面上出现错误 示例代码 Layout cshtml code if use
  • 在 C# 中使用逗号和小数格式化数字

    我需要显示一个带有逗号和小数点的数字 例如 情况 1 十进制数是 432324 没有逗号或小数点 需要将其显示为 432 324 00 不 432 324 情况 2 十进制数是 2222222 22 没有逗号 需要将其显示为 2 222 2
  • 如何让不显眼的 jquery 远程验证器执行异步..?

    在 MVC3 应用程序中 使用 jquery 不显眼的验证以及带有 远程 验证器的视图 模型 我试图在远程验证期间以及将有效表单提交到服务器时禁用提交按钮并显示等待图标 我以为我已经搞定了 直到我在 IE8 中尝试了它 问题是 当表单无效时
  • ASP.NET 的电子邮件地址验证

    使用什么来验证 ASP NET 表单上的电子邮件地址 我想确保它不包含 XSS 漏洞 这是 ASP NET 1 1 ASP NET Web 表单上发布的任何脚本标记都会导致您的网站抛出未处理的异常 您可以使用 asp 正则表达式验证器来确认
  • 验证仅适用于数组的第一项

    给定这个模型代码 Required Display Name Name public string Name get set 以下查看代码有效 Html LabelFor model gt model Name Html TextBoxFo
  • ASP.NET MVC - 路由 - 具有文件扩展名的操作

    有没有办法实现调用URLhttp mywebsite myarea mycontroller myaction xml这基本上是 假 请求文件 但结果将是一个为动态创建的文件提供服务的操作操作 我试过这个 context MapRoute
  • Struts 2 如何从自定义验证器中获取 i18n 消息

    如何从自定义验证器中的 key 获取消息 正如中提到的Struts 2 重用自定义表达式验证器 https stackoverflow com questions 28038827 struts 2 reusing custom expre
  • RedirectToAction 导致 ASP.NET MVC 3 中“路由表中没有与提供的值匹配的路由”

    我有一个项目最近升级到 ASP NET MVC 3 在我的本地计算机上 一切正常 当我部署到服务器时 每当我使用RedirectToAction称呼 它抛出一个System InvalidOperationException与错误消息路由表
  • MVC3 提交在我的复杂数据类型上返回 null

    在我的 MVC3 项目中 我有以下模型 public class CustomerModules public int ModuleId get set public string ModuleName get set public int
  • 如何在 CQRS 中处理基于集合的一致性验证?

    我有一个相当简单的域模型 涉及一系列Facility聚合根 鉴于我使用 CQRS 和事件总线来处理从域引发的事件 您如何处理集合的验证 例如 假设我有以下需求 Facility必须有一个唯一的名称 由于我在查询端使用最终一致的数据库 因此在
  • CakePHP 验证错误消息

    我正在尝试修改 CakePHP 显示错误消息的方式 下面是用于显示错误的通用模板 div class error message Please enter at least 3 characters div 我想像下面这样设置错误的样式
  • Django ModelForm 验证失败,没有错误

    好吧 我已经盯着这几个小时试图弄清楚发生了什么 但无济于事 我正在尝试使用 instance 关键字创建一个 ModelForm 将其传递给一个现有的模型实例 然后保存它 这是 ModelForm 在我试图找出此问题的原因时 从原始版本中删
  • EditText.setError 不显示错误文本,仅显示图标

    我的应用程序中有一个简单的验证 这里我使用了四个EdtiText 我显示错误时EditTex不会失去焦点 但问题在于失去焦点EditText只显示图标 没有错误消息 我尝试过使用requestFocus 方法 现在可以看到错误 但问题是 现

随机推荐

  • 如何设置和获取文件详细属性中的值? C#

    我最近尝试了Shell32 dll 这允许我获取值 但不允许我设置它们 Tried DSOFile dll 它确实允许我读取很少的值 但不允许我设置它们 无论如何我可以做到这一点吗 尝试下面的链接这将帮助您解决您的问题 http www c
  • 在客户端,WCF操作合约的返回值为null!有什么解决办法吗?

    我的 WCF 服务中有一个操作契约 它返回该类的一个实例 它实际上是一个消息契约 不是数据合同 消息契约具有属性 gt MessageBodyMember 的属性 MessageContract WrapperName Authorizar
  • JQuery ajax 使用 POST 从启用 CORS 的服务器获取图像/png

    我正在编写 HTML5 Backbone Phonegap 应用程序Github 仓库 https github com marfnk sosmobileclient 它使用 52n 的 SensorObservationService R
  • 将弧度角转换为 CGVector

    使用 Sprite Kit 我试图设置一个SKPhysicsBody根据给定角度移动 例如 如果您希望精灵向右移动 您可以指定 1 571 弧度 为了将指定的角度转换为速度 我使用下面的方法将弧度转换为CGVector 我根据记忆实现的原始
  • 注释会减慢解释语言的速度吗?

    我问这个问题是因为我使用 Python 但它也适用于其他解释语言 Ruby PHP JavaScript 每当我在代码中留下评论时 我是否会减慢解释器的速度 根据我对解释器的有限理解 它以字符串形式读取程序表达式 然后将这些字符串转换为代码
  • 如何将查询结果限制为精确组匹配

    我有一个如下表 user item X Apple X Orange X Pear Y Orange Y Pear Z Apple Z Orange 我的目标是有 3 个搜索选项 ANY ALL 至少 EXACT Where ANY返回至少
  • 在 AFNetworking 2.x 中设置自定义标头后,RESTful API 未接收参数

    我遵循了建议的解决方案AFNetworking 2 0 向 GET 请求添加标头 https stackoverflow com questions 19466291 afnetworking 2 0 add headers to get
  • Angular 2+ 中的 Bootstrap 3 Datepicker(带或不带 jquery)

    我是 Angular 2 的新手 我正在尝试将 Bootstrap 3 Datepicker 集成到 AngularJS2 我使用了 解决方案 如何在 Angular 2 中使用 Bootstrap 3 Datepicker https s
  • 更改 Angular 中的检测周期 - 澄清吗?

    关于ChangeDetectorRef 我已经知道了 detectChanges实际上触发变化检测 同时 markForCheck 组件的实际变化检测是not已计划但将来何时发生 作为 当前或下一个 CD 周期 取自这里 https sta
  • 如何M2MQTT自动重连

    我正在尝试使用此协议 并且已经有 2 个客户端 一个用于发布 另一个用于订阅 和一个正在工作的经纪人 我的问题是我想在订阅客户端中实现重新连接功能 因为 wifi 信号不稳定并且不想每次都手动重新启动客户端 我该如何实现这一点 您可以使用
  • .NET 的 Environment.NewLine 的 R 等效项

    是否有 R 等效项环境 NewLine https msdn microsoft com en us library system environment newline v vs 110 aspx在 NET 中 我正在寻找一个角色对象 它
  • 打开特定主题的 .CHM 文件?

    我创建了一个 CHM 文件 然后当我在 c 中打开它时 我得到了第一个主题 我想打开它到一个指定的主题 这是我现在用来打开它的代码 Help ShowHelp this Resources ServerHelp chm 我希望能够将其打开到
  • 是否可以根据百分位值而不是原始输入绘制箱线图?

    据我所见 boxplot 方法需要一系列原始值 数字 作为输入 然后计算百分位数以绘制箱线图 我想要一种方法 通过它我可以传递百分位数并获得相应的boxplot 例如 假设我已经运行了多个基准测试 并且对于每个基准测试 我都测量了延迟 浮点
  • C++ 和 Boost:编码/解码 UTF-8

    我正在尝试做一个非常简单的任务 采用 unicode awarewstring并将其转换为string 编码为 UTF8 字节 然后以相反的方式 取string包含 UTF8 字节并将其转换为 unicode 感知wstring 问题是 我
  • 在 Magento 中复制并粘贴类别

    我想将我的第一个类别复制到 Magento 中的第二个类别 我应该怎么办 谢谢 韦斯利 By code
  • XML DeSerialize - 可以在文件中捕获额外的 XML 吗?

    有没有办法将您在课堂上没有预料到的额外 XML 标记捕获到文件中 例如 using System using System Collections Generic using System IO using System Linq usin
  • 使用 Flask-Restful 返回渲染的模板在浏览器中显示 HTML

    我是 Python 和 Flask 的新手 我的应用程序的根目录中有一个模板文件夹 其中有两个文件
  • 启动时 LiteSQL DB 不为空

    我认为这是一个相当简单的问题 我对 Android 的东西还太年轻 我想准备将使用数据库的应用程序 在我展示的每个示例中 都有一个空数据库 其中首先启动应用程序 然后进行一些插入 我希望应用程序具有相当大的数据库 因此我希望在应用程序启动时
  • 对于具有行间距和多种颜色的单行文本,UILabel 大小不正确

    我很确定这实际上是一个 UIKit 错误 但想获得一些输入来看看我是否在这里遗漏了一些愚蠢的东西 这是我的代码 single line with modified line spacing and 2 colors broken line
  • MVC3 中的 IValidatableObject - 客户端验证

    使用 MVC3 您可以使用两种新机制来添加自定义验证 它们是 1 ValidationAttribute 子类或 2 实现 IValidatableObject ValidationAttribute 允许您通过实现 IClientVali