问题标签 [asp.net-mvc-validation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc-3 - 仅验证 ajax 加载的部分视图
我有一个带有一些控件的表单。表单上有一个按钮可以加载部分视图。在局部视图中,有两个必填字段文本框和一个按钮。当它被点击时,我只需要显示部分视图内的文本框的错误消息,而不是实际表单中的字段。当我单击表单的提交按钮时,必须显示所有错误消息。
加载部分视图后,我正在重新初始化验证插件,如下所示。
我尝试使用下面线程中描述的验证属性,但它不起作用。也许它适用于正常加载的视图。
但是,我可以通过调用 textbox1.valid() 和 textbox2.valid() 来单独验证。但我认为我缺少标准的做法。任何帮助表示赞赏。
c# - 选择选项值的 MVC4 验证
我是 MVC 技术的新手,我有一个 MVC 4 应用程序,正在尝试显示对选择输入(月份和年份)的验证。我对 input type="text" 进行了验证,它对我来说工作正常。我需要帮助来选择一个选项。请帮忙解决这个问题?
风景:
模型视图:
感谢您的支持
asp.net-mvc - MVC 验证基础(使用实体框架)
MVC 验证基础(使用实体框架)
设想:
我有一个模型类如下(通过实体框架 EF.x DbContext 生成器自动生成)。
(目前没有视图模型)。
当我在强类型视图上提交空白表单时,我会收到以下验证消息:
进度字段是必需的。
ValueInContractCurrency 字段是必需的。
ForecastStart 字段是必需的。
ForecastEnd 字段是必需的。
即 db 表中的所有字段。
如果我填写这些并再次提交,那么控制器就会被调用。由于 IsValid 为假,控制器然后返回到视图页面。
然后屏幕会重新显示这些验证消息:
StageId 字段是必需的。
DepartmentId 字段是必需的。
StatusId 字段是必需的。
OwnerId 字段是必需的。
即 db 表中的所有外键字段(这些也是所有选择框)。
如果我填写这些,表单就会成功提交并保存到数据库中。
问题:
鉴于我没有使用任何 [Required] 属性,验证从何而来?这与实体框架有关吗?
为什么表单没有立即在客户端验证所有内容,外键(或选择框)有什么不同,它们仅由 IsValid() 检查,即使它们是空的,因此显然无效?
您如何使所有内容都在一个步骤中得到验证(对于空字段),因此用户不必提交两次表单并且所有验证消息都会立即显示?您是否必须关闭客户端验证?
(我尝试将 [Required] 属性添加到外键字段,但这似乎没有任何区别(可能它们只影响 IsValid)。我也尝试调用 Html.EnableClientValidation() 但这也没有任何区别)。
4..最后,我看到有人使用 [MetadataType[MetadataType(typeof(...)]] 进行验证。如果您有视图模型,为什么要这样做,或者只有在没有视图模型时才这样做?
显然我在这里遗漏了一些基础知识,因此,如果有人知道有关 MVC 验证过程如何逐步工作的详细教程,包括 javascript/controller 调用,而不仅仅是关于属性的另一篇文章,那么我可以做也有一个链接:c)
更多关于神秘人的信息:
解决方案设置如下:
.NET4
MVC3
EF5
EF5.x Db 上下文生成器
在 edmx 设计表面上使用“添加代码生成项”来关联 EF.x Db 上下文生成器文件(.tt 文件)
控制器如下所示:
视图是这样的:
asp.net-mvc-4 - jQuery 时间选择器和 MVC 验证 - 字段必须是日期
我有一个StartDate
在我的模型中命名的属性。我 从这里timepicker
使用插件插件。它工作正常,但问题是我收到验证错误消息。如何更改验证以使其通过日期时间。jquery.ui
型号为:
我主要遵循Rick Anderson 在 MSDN上给出的指示。
asp.net-mvc - ValidationMessage 显示在初始 GET 方法上
我正在开发一个 MVC 4 项目,该项目即使在一个简单的 GET 方法上也不断显示 ValidationMessage,该方法不进行复杂类型的验证或模型绑定:
唯一构建 ViewModel并且BuildLocationMakeAnnouncementViewModel
不触及 ModelState。
然后在视图上我有:
发出:
输出 ModelState 表明它没有任何错误
没有错误时,为什么 ValidatioMessage 会输出?
有什么建议么?
asp.net-mvc - MVC 客户端验证做数据库检查
有没有办法通过 MVC 中的客户端验证执行“数据库”检查?
我有以下课程
我希望客户端验证也调用“IsValid”方法 onkeyup/lost focus,而不仅仅是在“checkemail”javascript 函数中进行常规 javascript 检查。
我拥有的javascript函数如下:
如果有人能指导我正确的方向或提供类似的教程,我将不胜感激。
谢谢
asp.net-mvc - 如何使用禁用的 JavaScript 更新带有验证错误消息的 UI?
我有一个表格:
模型:
控制器:
如果禁用 javascript,如何显示错误消息并更改名称文本框的 css 样式?
据我了解:
不行吗?
在输出 HTML 中,我可以看到生成的 span,ValidatorMessageFor
但它有一个btn-group
隐藏此标签的 css 类。
c# - 动态页面上的 ASP.NET MVC 2 验证
我的 asp.net mvc 2 应用程序上有多个页面的注册向导。在第一页上,我应该有参与该过程的人员的基本数据表格。我应该有 3 个标记为名字、姓氏和地址的文本框,以及 1 个带有文本“添加另一个人”的复选框。当用户点击单选按钮时,新的文本框会出现新的单选按钮,所以我们可以在同一个表单中添加多个人。理论上,我们应该能够插入尽可能多的人。所有字段都是必填的,所以在页面顶部的验证摘要中,我应该有类似“请输入第二个人的名字”之类的内容。我有 DTO 课程:
我想我的这个页面的模型应该是List<Person>
,我会用 javascript/jQuery 为新人附加 html。请在这里帮助我,我应该如何验证这个动态页面?我可以通过保存和返回按钮来完成这个向导,而且,我们应该能够取消点击页面上的任何单选按钮,那个特定的人应该消失并且验证器应该不再捕获它。我的整个向导都在使用服务器端验证(DataAnnotations),我不想使用客户端验证。提前致谢。
更新:
我需要更多帮助。我想用新属性扩展 Person 类:
如果每个人中的所有百分比的总和IEnumerable<Person>
等于 100,我希望在提交时进行服务器验证。我可以为此创建自定义属性吗?如何创建?我的模型是通用列表,我不能应用[CustomAttribute]
它,对吗?
另外,我应该在页面顶部有验证摘要,而不是在每个输入之后。我已经提出:<%:Html.ValidationSummary(false, "Please correct the following and resubmit the page:")%>
有没有办法为每个人设置不同的验证消息?谢谢
.net - ASP.NET MVC 2 列表模型验证
我正在开发 MVC 2 应用程序,但遇到了问题。我的代码如下所示:
和类用户
我想创建自定义属性(DataAnnototation)来验证 IEnumerable 用户在发布表单时的工资总和是否小于 10000?我可以在这里做吗,因为我的模型是列表?
c# - 检查列表中重复项的更好方法
我正在使用验证属性将对象列表从视图发布到控制器时检查是否有任何重复项。它有效,但我想知道是否有更好的方法可以遵循(可能是添加客户端验证)。任何反馈表示赞赏。