asp.net MVC4 中的条件验证

2024-05-16

我希望能够根据从哪个控制器调用视图来启动一些验证函数...我将在 ViewState 或其他内容中设置一个变量,这将帮助我知道从哪个控制器调用该视图。

换句话说,如果设置了某个变量,我希望需要验证...这是当我将 Jquery 放入代码中时我在 MVC2 中执行的操作...

HospitalFinNumber: {
                    required: function (element) {
                        debugger;
                        return '@isFlagSet' != 'True'; 
                    },
                    minlength: 6,
                    remote: function () {
                        //debugger;
                        return {
                            url: '@Url.Action("ValidateHosFin", "EditEncounter")',
                            data: { hospitalFin: $('#HospitalFinNumber').val(), encflag: '@encflag' }
                        };
                    }
                }

你知道我在那里做什么。仅当设置了某个变量时才需要进行此验证...在本例中,变量 isFlagSet...然后我将设置最小长度并调用远程函数以确保该值是唯一的。

我不想在所有情况下都这样做。

从我到目前为止所读到的所有内容来看,没有明确的方法可以使用不显眼的ajax来完成此任务?我错了吗,有什么办法可以做到这一点吗?如果没有,我怎样才能将常规的旧 jquery 验证放入我的代码中?


ASP.NET MVC 3 使用 jquery 非侵入式验证来执行客户端验证。所以你可以写一个custom RequiredIf https://stackoverflow.com/q/6495510/29407验证属性或使用中提供的一个Mvc 万无一失的验证 http://foolproof.codeplex.com/进而:

public class MyViewModel
{
    [RequiredIf("IsFlagSet", true)]
    [Remote("ValidateHosFin", "EditEncounter")]
    [MinLength(6)]
    public string HospitalFinNumber { get; set; }

    public bool IsFlagSet { get; set; }

    public string EncFlag { get; set; }
}

然后剩下的就是包括jquery.validate.js and jquery.validate.unobtrusive.js脚本或使用 ASP.NET MVC 4 中包含它们的相应包。

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

asp.net MVC4 中的条件验证 的相关文章

  • 使用 MSBuild 12 构建 MVC 4.0 项目时“任务失败,因为未找到 AXImp.exe”

    我正在尝试使用 CruiseControl Net 和 MSBuild 设置构建服务器 但是 它失败并出现错误 C Builds PremiumStore checkout PremiumStore sln default target 1
  • 将数组从 javascript 传递到控制器 MVC 4

    我正在使用剃刀 但很难将数组传递给控制器 该数组包含我制作的对象 我正在尝试执行此操作 ajax type POST url HomePage HandleOperations data JSON stringify operationCo
  • Windows Azure 远程站点“Microsoft.ACE.OLEDB.12.0”提供程序未在本地计算机上注册[重复]

    这个问题在这里已经有答案了 以下代码在我的本地开发计算机上可以正常运行 但是当我部署它时 我收到以下错误消息Azure 远程网站 我已经查看了SO答案和谷歌搜索结果 但我仍然不清楚我必须在本地计算机上安装什么 这样当我将代码推送到Azure
  • 非法尝试将集合与两个开放会话关联 流畅的 nhibernate

    我有这个异常 非法尝试将集合与两个打开的会话关联 每次我保存包含子集合的实体时都会引发该异常 我用谷歌搜索一下 我发现在调用保存时我打开了两个或多个会话 但我确定我只使用了一个会话 我哪里做错了 我该如何解决这个问题 注意 我使用的是 MV
  • 将 jQuery 验证器规则添加到 ASP 中动态创建的元素

    我在 MVC3 项目的页面上有一些动态插入的表单字段 通常我们会在服务器端添加 jQuery 验证 但在这种情况下我们不能 UI 中的多个字段生成一个隐藏字段的值 这就是提交的内容 我们无法针对隐藏字段进行验证 因此我们必须为用户可以看到的
  • MVC4更新部分视图

    我正在开发一个简单的 MVC 应用程序 我有主视图 部分视图和控制器 这是我的主要视图 model partitalViewTest Models Qset div class transbox style height 1 Html Pa
  • 将 MVC 站点部署到 IIS 会导致找不到默认共享部分视图

    我有一个可以在本地 IIS 上完美运行的网站 我的所有页面都使用默认的共享部分视图 这称为预期 Layout cshtml 该视图放置在我的共享文件夹中 这可以在这里看到 正如我所期望的那样 这非常有效 不过 我现在发布了我的网站 然后 我
  • 如何在编辑器模板中获取序列/数组索引?

    案件 我有一个使用 X 类编辑器模板显示的 X 类项目列表 问题 如何获取编辑器模板内部正在处理的项目的索引 我一直在使用这个 HtmlExtension 它只返回迭代所需的 id 它基本上是一个正则表达式ViewData Template
  • jquery 验证错误位置

    这看起来很简单 但我无法弄清楚 我正在使用 jquery 验证插件 我验证所有文件 但我想要的是在输入文本行中显示验证消息警报 例如在电子邮件输入中 请填写电子邮件地址 但现在它出现在所有字段下 在我的html中
  • SimpleMemership CreateUserAndAccount 自定义

    我正在尝试添加一个新属性UserProfile我的模型中的类 public class UserProfile Key DatabaseGeneratedAttribute DatabaseGeneratedOption Identity
  • 在选中的复选框中发布表单时 ModelState 无效

    我遇到以下问题 如果我通过 AJAX 向 api 控制器提交包含复选框中选中值的表单 ModelState 对象会说它无效 先决条件 视觉工作室2012 ASP NET MVC 4 最终版 最新的 jQuery 和 jQuery 不显眼的验
  • 如何在只读字段上启用 jquery 验证?

    伙计们来自http jqueryvalidation org http jqueryvalidation org 刚刚发布版本 1 13 1 检查他们的网站 我在更新日志中看到了这一点 核 忽略只读字段和禁用字段 9f4ba10 这是链接
  • Jquery 对话框部分视图服务器端验证“保存”按钮单击

    我有一个显示数据的表格 表格的每一行都有编辑按钮 单击编辑按钮时 将出现一个 jquery 对话框 其中包含用于编辑用户信息的表单以及保存和取消按钮 表单只不过是部分视图 按钮是部分视图的一部分
  • 布局中的模型破坏了其他页面

    由于缺乏 MVC4 经验 我有一个设计缺陷 问题是我的布局中有一个模型 model BasicFinanceUI Models LoginModel Content Site css rel stylesheet type text css
  • Chrome“请匹配请求的格式”验证消息

    我正在研究 HTML 5 验证和本地化 并设法让一些代码正常工作 使我能够本地化 HTML 5 验证错误消息 见下文 我的问题是 在 Chrome 中 当与模式匹配时 您仍然会弹出英语 或者我猜您 Chrome 设置的任何语言 的弹出窗口
  • MVC4 - ContextDependentView - 是什么意思?

    我刚刚开始使用 MVC4 我看到的第一个操作方法有一些新内容 我查了一下互联网 找不到任何关于此的信息 public ActionResult LogOn return ContextDependentView 有谁知道 ContextDe
  • 将 viewbag 从操作控制器传递到部分视图

    我有一个带有部分视图的 mvc 视图 控制器中有一个 ActionResult 方法 它将返回 PartialView 因此 我需要将 ViewBag 数据从 ActionResult 方法传递到 Partial View 这是我的控制器
  • jQuery 验证:更改默认错误消息

    有没有一种简单的方法来更改默认错误值jQuery 验证插件 http jqueryvalidation org 我只是想重写错误消息 使其对我的应用程序更加个性化 我有很多字段 所以我不想为字段 x 单独设置消息 我知道我可以做到这一点 将
  • 验证动态字段jquery

    下午好 我遇到了以下问题 我正在使用 jQuery 验证插件来验证我的表单 v1 13 0 客户端 工作得很好 但我无法解决的问题是 我有一个字段名称 product 它是一个数组 在这个阵列中我可能有一种或可能有 20 种产品 这是我的代
  • 更改 web.config 的 appSettings 中的值时重新启动 IIS 中的网站

    为了安全起见 当我更改 Web config 中 appSettings 的值时 我总是重新启动网站 以便刷新所有更改 但我真的需要重新启动它吗 IIS 如何处理 appSetting 值 是一次性读取这些值 启动应用程序后 还是每次客户端

随机推荐