📜  asp.net core mvc 未触发客户端验证 - C# (1)

📅  最后修改于: 2023-12-03 15:13:31.824000             🧑  作者: Mango

asp.net core mvc 未触发客户端验证 - C#

介绍

ASP.NET Core MVC 是一种 Web 应用程序框架,具有允许您构建 Web 应用程序的丰富功能和 ASP.NET 核心的优点。在开发 ASP.NET Core MVC 应用程序时,您可以采用客户端验证来确保数据的正确性。不过,如果验证未触发,您需要检查一下常见原因。

常见原因
禁用 JavaScript

如果您已经禁用 JavaScript,那么客户端验证不会起作用。请确保您的 JavaScript 被启用。

使用 AJAX 载入表单

如果您使用 AJAX 载入表单,则需要手动触发验证。您可以在使用 AJAX 载入表单后使用以下代码来手动触发验证:

$('#form').removeData('validator');
$('#form').removeData('unobtrusiveValidation');
$.validator.unobtrusive.parse('#form');
禁用未验证属性

如果您已经禁用未验证属性,则客户端验证不会起作用。一种解决方案是在模型类中使用 System.ComponentModel.DataAnnotations 命名空间中的 [Required] 特性来标记要验证的属性。这将自动生成必填字段验证代码。

将模型属性命名为 "Id"

如果您将模型属性命名为 "Id",则客户端验证不会触发。您可以通过更改属性名称来解决此问题。

总结

ASP.NET Core MVC 是一个优秀的 Web 应用程序框架,提供了丰富的功能和优秀的性能。使用客户端验证可以确保数据的正确性,但如果验证未触发,请检查常见原因。禁用 JavaScript、使用 AJAX 载入表单、禁用未验证属性、将模型属性命名为 "Id" 都可能导致验证未触发。