使用 MVC 和 jQuery 进行内联客户端验证

2023-12-06

我设置了一个简单的示例来显示 jquery UI 对话框中的表单,并希望在该表单上启用内联客户端验证

然后我将脚本添加到我的母版页中

<script type="text/javascript" src="<%: Url.Content( "~/_assets/js/jquery-1.4.3.min.js" )%>"></script>
<script type="text/javascript" src="<%: Url.Content( "~/_assets/js/jquery.validate.min.js" )%>"></script>
<script type="text/javascript" src="<%: Url.Content( "~/_assets/js/MicrosoftMvcJQueryValidation.js" ) %>"></script> 

然后我通过以下代码启用了客户端验证

<% Html.EnableClientValidation(); %>
<% using (Html.BeginForm() { %>
<% } %>

然后,我不知道如何启用内联验证对于每个输入因此,当用户离开其中任何一个的焦点时,就会发生验证.

客户端验证似乎只有在我完成提交后才起作用。但这不是“客户端验证”,因为属性是从我的服务器代码验证的......

有什么建议吗?


最后我已经解决了。

首先,我的表单从未绑定到由内部代码提供的验证回调MicrosoftMvcJQueryValidation.js脚本。这是因为我使用的是 jQuery 对话框,并且表单位于对话框内,而脚本包含在母版页中。

我对解决方案的第一次尝试是修改MicrosoftMvcJQueryValidation.js。特别是我添加了一个功能EnableClientSideValidation()我将代码移到了哪里$(document).ready函数如以下代码示例所示

function EnableClientSideValidation() {
    var allFormOptions = window.mvcClientValidationMetadata;
    if (allFormOptions) {
        while (allFormOptions.length > 0) {
            var thisFormOptions = allFormOptions.pop();
            __MVC_EnableClientValidation(thisFormOptions);
        }
    }
}

$(document).ready(function () {
    EnableClientSideValidation();
});

然后,我在放置在对话框标记代码中的脚本块内调用了相同的函数$(document).ready()功能

在萤火虫的帮助下,我在里面放置了一个断点EnableClientSideValidation()函数,然后经历了仅在主页准备好时调用而不是从对话框中调用的事实。这是因为我的“对话框”脚本块位于<form>...</form>标签,所以脚本不起作用。

像这样的代码

<% using (Html.BeginForm()) { %>

    //DIALOG FORM CODE WAS HERE

    <script type="text/javascript">
    $(document).ready(function () {
        EnableClientSideValidation();
    });
    </script>
<% } %>

已更改为

<% using (Html.BeginForm()) { %>

    //DIALOG FORM CODE WAS HERE

<% } %>

<script type="text/javascript">
$(document).ready(function () {
    EnableClientSideValidation();
});
</script>

终于一切开始工作了!我想谢谢vandalo and kdawg帮助寻找解决方案。虽然还有一些遗漏,但你的回答刺激了我的头脑。

我将其发布给其他可能遇到相同问题的人。

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

使用 MVC 和 jQuery 进行内联客户端验证 的相关文章

  • 标准 Html.DisplayTextFor() 没有 HTML 编码吗?

    我们目前正在处理 ASP NET MVC 项目之一的一些 XSS 问题 我发现两个问题 第一个问题与我们的请求验证模式有关 攻击者现在可以利用此安全漏洞在我们的数据库中删除一些不良内容 第二个问题是我们如何显示此内容 我们使用 Html D
  • 如何构造控制器来对多个条件进行排序 asp.net mvc

    设置控制器按许多 可能为空 标准排序的最佳方法是什么 举例来说 我正在建立一个销售汽车的网站 我的 CarController 有一个函数 Index 它将汽车的 IList 返回到视图 并且每辆车的详细信息都用部分视图呈现 构建这个结构的
  • 如何访问Web api控制器中的mvc控制器以从视图中获取pdf

    我为单页 Web 应用程序创建了 Web Api 和 MVC 组合 我想调用 Web api 并渲染 mvc 控制器以使用 Rotativa api 从视图创建 pdf 问题是当我在 Web api 中访问 mvc 控制器时它不起作用 我如
  • 实体框架 - 选择特定列并返回强类型而不丢失强制类型转换

    我正在尝试做类似的事情这个帖子 https stackoverflow com questions 1094931 linq to sql how to select specific columns and return strongly
  • 选中哪个复选框(控制器)并列出结果

    我是 ASP NET MVC 新手 我正在制作一个在线视频商店应用程序 我有这样的看法 用户可以在其中选择要租借的视频 视图的代码 model IEnumerable
  • jQuery 多部分表单验证

    当我解决这个问题时 这可能会变成多个问题 但我需要一些认真的 jQuery 帮助 我已经根据示例创建了一个多部分表单bassistance de http jquery bassistance de validate demo multip
  • ASP.NET MVC 母版页数据

    我使用 ASP NET MVC 越多 我就越喜欢它 然而 在母版页上显示模型数据的情况下 似乎有多种方法可以实现 我不确定最佳解决方案 我的示例是一个商业网站 我想在每个页面上输出产品类别列表 并显示访问者购物车的状态 在 ASP NET
  • Html.BeginForm PUT

    当我在更新项目时使用 Html BeginForm 提交表单时 似乎不可能定义 PUT 它是否正确 是的 这是正确的 浏览器仅支持 GET 和 POST 来发送表单 不过你可以使用 AJAX ajax url action type PUT
  • 实体框架 - 实体类型之间的关联已被切断问题

    您好 当我尝试删除 绑定 表中的一行时 我遇到了实体框架问题 这些表看起来像这样 Table Users public class UserEntity BaseEntity Required MaxLength 30 public str
  • 自定义角色提供程序不实现继承的抽象成员

    我需要一些帮助在 ASP NET MVC 应用程序中实现自定义角色提供程序 问题是我遇到了几个错误 例如 MyRoleProvider does not implement inherited abstract member System
  • “RouteCollection”不包含“MapMvcAttributeRoutes”的定义

    我尝试使用基于属性的路由 但是当我尝试以下代码片段来激活基于属性的路由时 我收到以下错误消息 RouteCollection 不包含定义 MapMvcAttributeRoutes 这是我的代码 public class RouteConf
  • 为什么 httpRuntime targetFramework="4.5" 禁止抓取 .ASPXAUTH cookie?

    当我的 web config 具有以下 httpRuntime 时 我的控制器无法获取 cookie ASPXAUTH 它似乎能够获取任何其他 cookie 无论带或不带句点前缀 如果我删除下面的行 它就可以正常工作
  • WebActivator PreApplicationStartMethod 不起作用

    我正在按照 onin 架构制作一个新项目 我有一个名为 bootstrapper 的单独项目 其中包含 IOC 和 WebActivator 我的问题是包含 WebActivator 的类甚至没有在调试中加载 也许我错过了什么 assemb
  • 读取 ASP.NET 中分块传输编码的 http 请求的正文

    J2ME 客户端正在使用分块传输编码发送 HTTP POST 请求 当 ASP NET 在 IIS6 和 WebDev exe server 中 尝试读取请求时 它将 Content Length 设置为 0 我想这没问题 因为加载请求时
  • 删除或替换 RouteTable 中的现有路由

    我得到了一个 ASP NET MVC 2 0 Preview 1 应用程序 并开始创建一些包含自己的路由的区域 我希望有一种方法可以在主项目中覆盖这些路线 我当然不能添加同名的新路线 我可以看到 RouteTable Routes Remo
  • 当 URL 包含 ASP.Net Core 参数的“+”时出现 404 错误

    当参数包含编码为空格的空格时 我的服务器返回 404 错误 代替 20 我不明白为什么 路线的形式为 Route Search PRM1 prm1 PRM2 prm2 PRM3 prm3 我的第一个问题是如何让服务器理解这种 URL htt
  • 实体框架中的多态性

    具体类 BankAccount and CreditCard 在控制器上不可见 我被这个问题困扰了 我正在使用该网站的示例 http weblogs asp net manavi archive 2010 12 28 inheritance
  • NServiceBus 3.2 示例问题

    我正在尝试运行 AsyncPages 的 NServiceBus 示例 看起来很简单 从 NServiceBus com 下载最新版本 执行bat文件来安装先决条件 打开解决方案 Press F5 在文本框中输入数字 当我这样做时 我遇到了
  • 如何在asp.net C#中从http重定向到https并将其设为网站的默认版本

    如何在asp net c 中从http重定向到https 我已经安装了https证书现在我想将https设置为我的网站的默认版本 iam使用windows server 2008 R2 asp net C 4 0 您是否正在寻找这样的东西
  • 在 MVC 类上创建主键字段

    我是 MVC 和 C 新手 我只是偶然发现它并发现它很有趣 我遇到了一个不允许我继续的问题 这是我的代码 using System using System Collections Generic using System Linq usi

随机推荐

  • 如何国际化/本地化 JSP/Servlet Web 应用程序?

    我从谷歌了解到 国际化是我可以使自己的 Web 应用程序使用所有语言 我想了解Unicode国际化的过程 所以我从here and there 我能够理解 Unicode 即字符集如何编码为字节 然后又如何将字节解码为字符集 但我不知道如何
  • android - CursorAdapter中两个视图布局的bindView和newView

    故事是这样的 我想在我的适配器中使用两种布局 所以基本上 我需要在 newView 中有一个 if 来确定要返回哪个视图 并在 bindView 中有一个 if 来知道在视图中做什么 这是正确的方法吗 我在想这样的事情 Override p
  • mysqli::bind_param();变量

    mysqli new mysqli localhost my user my password world check connection if mysqli connect errno printf Connect failed s n
  • 将位图转换为 ASCII 艺术图

    这样的图像转换算法是如何工作的 我想将位图转换为 ASCII 艺术 谁能帮我看看我应该使用哪种算法 W W W W W W W W W WW WW WW W WW WWW WW W W WW WWW WW W
  • JQuery jquery-1.7.1.min.js live() 不推荐使用 on()

    来自 jQuery 网站 从 jQuery 1 7 开始 live 方法已被弃用 使用 on 来 附加事件处理程序 在 1 7 1 版本中 我尝试将所有 live 更改为 on 但没有成功 有谁知道为什么吗 这就是它的调用方式 这是不起作用
  • Google Android GCM 未注册错误

    我正在使用 Android GCM Push 服务 它在一段时间内工作得很好 但在这段时间里它失败了 这是详细信息 如果我让我的应用程序空闲一段时间 然后服务器突然从 Google GCM 获得 NotRegistered 响应 这很奇怪
  • 回形针在哪里放置丢失的.png 默认图像?

    我在我的应用程序中使用回形针 但我的控制器测试失败 因为 BlogsControllerTest test should update blog Paperclip AdapterRegistry NoHandlerError No han
  • 使用 C# 命令 netsh

    我想创建一个 C 应用程序来创建 WLAN 网络 我目前使用命令提示符使用 netsh 我的应用程序应该通过单击按钮来执行此操作 这是我在管理模式下的命令提示符中使用的命令 netsh wlan set Hostednetwork mode
  • 按组生成排名

    如何根据标记在数据框中创建排名 但排名应根据性别分开 Sl no Name Gender Marks Rank 1 aa Male 77 3 2 bb Female 80 2 3 cc Male 74 4 4 dd Female 72 5
  • 如何在 CollapsingToolbarLayout 中使用 TabLayout 和 Toolbar?

    我正在看克里斯班斯 奶酪广场我试图将带有工具栏的 TabLayout 放入 CollapsingToolbarLayout 中 这是我的代码
  • 如何使用 MVC 3 和 Entity Framework Code First 建立多对多关系的 ModelBind?

    我在 MVC 3 应用程序中遇到了同样的问题 我有一个创建新产品的视图 并且该产品可以分配给一个或多个类别 这是我的 EF Code First 模型类 public class Product public int ProductID g
  • 观察者可以观察到多个可观察对象吗?

    试图找到一个这样的例子 有可能我没有采取正确的方法 或者我的思想过度简化了观察者模式的概念 我想创建一个类来控制来自 Web 服务的消息 并且我希望该类监视许多其他操作的更改 我见过的观察者模式示例表明许多观察者正在观看单个可观察的内容 我
  • 我需要获取 csv 列中的值(分组)计数

    我需要计算第一列的值 这些 ID 可能存在于我收到的任何给定 csv 文件中 也可能不存在 因此 我需要循环遍历 csv 文件 查看第一列 如果不存在 则将其添加到保持数组 PWSs 中 或者如果我已经添加了该保持数组 则增加该保持数组中的
  • OpenCV - NDK 更新后对“cv::CascadeClassifier::detectMultiScale()”的未定义引用

    昨天我将 Android Studio 包含 NDK 更新到版本17 0 4754217从那时起我就无法再运行我的应用程序了 当我尝试在更新后重新运行代码时 它给了我错误ABIs mips64 armeabi mips are not su
  • android 获取文本外观运行时

    我已经重写了 textview 类 并且我想在文本外观很小时执行一些操作 如何检查xml布局文件设置的文本外观 我找到了一个解决方法 private int getTextAppearance AttributeSet attrs int
  • 获取在 page_init 中触发回发的控制

    我有一个包含动态创建的下拉列表的网格视图 当更改下拉值并在网格上进行批量更新 btnUpdate click 时 我必须在页面初始化中创建控件 以便它们可用于视图状态 但是 我还有其他几个按钮也会导致回发 并且我不想在页面初始化中创建控件
  • 在生成语句中格式化日期

    在 Pig 中 我有一个语句 基本上将日期附加到我生成的值中 Data FOREACH Input GENERATE CurrentTime FLATTEN group COUNT guid oas Cnt 输出给了我日期2013 05 2
  • 正则表达式匹配-Java

    我正在从以下格式的文件中获取输入 int1 int2 int3 int4 现在我想在我的Java代码中读取int1 int2 int3和int4 我怎样才能用java中的正则表达式匹配来做到这一点 谢谢 String ints 2 3 4
  • 将服务器日志记录到一个文件,将 SQL 日志记录到另一个文件

    我想使用 Log4J 将所有服务器相 关日志 例如启动和关闭 记录到一个文件 并将所有 Hibernate SQL 相关日志记录到另一个文件 我正在尝试过滤所有不相关的日志以仅查看 SQL 查询 如果有办法实现的话 有什么想法或建议吗 Th
  • 使用 MVC 和 jQuery 进行内联客户端验证

    我设置了一个简单的示例来显示 jquery UI 对话框中的表单 并希望在该表单上启用内联客户端验证 然后我将脚本添加到我的母版页中 assets js jquery 1 4 3 min js gt gt assets js jquery