【发布时间】:2019-02-09 16:50:10
【问题描述】:
在 C# ASP.NET Core 2.2 的客户端添加简单验证
我已阅读 MS docs on validation 并确定它最适合应用客户端验证。然而,在提供的示例中,他们展示了 jQuery 的一些东西,我的印象是 jQuery 现在有点过时了。此外,我们被 MS 的好工具宠坏了,它们会自动为我们做事。 (我认为属性为 asp-validation-for 的 span 和属性为 asp-validation-summary 的 div 暗示着魔法就在那里。事实并非如此结果。)
我的代码如下所示。
<div class="row">
<div class="col-md-4">
<form asp-controller="Security"
asp-action="Register"
method="post">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="form-group">
<label asp-for="@Model.Email" class="control-label"></label>
<input asp-for="@Model.Email" class="form-control" />
<span asp-validation-for="@Model.Email" class="text-danger"></span>
</div>
<div class="form-group">
<label asp-for="@Model.Info" class="control-label"></label>
<input asp-for="@Model.Info" class="form-control" />
<span asp-validation-for="@Model.Info" class="text-danger"></span>
</div>
<div class="form-group">
<input type="submit" value="Send" class="btn btn-primary" />
</div>
</form>
</div>
</div>
我想知道我缺少什么才能使验证正常工作(即,如果在提交表单时未填写两个字段以及取消表单提交,则会收到错误消息)。或者,这是我所缺少的相当基本的东西,我想获得有关适当搜索词的提示。请注意,我只寻找视觉效果:客户端消息,与输入的后端处理程序无关。
我已经看到 some questions 关于这个主题,但由于这些似乎没有获得批准的决议,我觉得最好问一下,以便以正确的方式做事,而不是猜谜游戏。
【问题讨论】:
-
asp.net 核心客户端验证依赖于来自 Microsoft 的 jquery.unobtrusive 验证,您必须在页面中包含该脚本才能获得客户端验证。 github.com/aspnet/jquery-validation-unobtrusive
标签: c# validation asp.net-core client-side asp.net-core-2.2