ASP.NET Core 验证标记助手奇怪的行为

Posted

技术标签:

【中文标题】ASP.NET Core 验证标记助手奇怪的行为【英文标题】:ASP.NET Core validation tag helper strange behaviour 【发布时间】:2017-02-27 00:14:57 【问题描述】:

今天我注意到测试验证消息时 ASP.NET Core taghelper 的奇怪行为。

我没有 jquery-validate 和 jquery-validate-unobtrusive。

这很好用:

<span asp-validation-for="Name" class="text-danger"></span>

这不起作用:

<span asp-validation-for="Name" class="text-danger" />

知道为什么吗?! 这是一个错误吗?

感谢您的意见!

【问题讨论】:

***.com/questions/2816833/…的可能重复 谢谢!不知道这在 html 5 中也是无效的... 【参考方案1】:

@Jonathan 是正确的 - 这是一个无效的自动关闭元素。使标签自动关闭表明它是void element - 意味着标签内部没有内容。 Span 标签完全有内容!

但是,它在 Core 中不起作用的原因是 because what happens on this line。使用自闭合标签,output 变量上的TagMode 属性设置为SelfClosing,并且TagBuilder 不会将任何消息内容放入其中(因为它是空的没有内容的元素)。

&lt;/span&gt; 结尾,模式更改为 StartTagAndEndTag 并正确添加内容。

【讨论】:

以上是关于ASP.NET Core 验证标记助手奇怪的行为的主要内容,如果未能解决你的问题,请参考以下文章

[十一] ASP.NET Core 中的 Taghelper

静态 ID - ASP.NET Core 分布式缓存标记帮助程序

带有 ASP.NET MVC 6 锚标记助手的 QueryString

asp.net core 选择标签助手

标签助手未在 ASP.NET Core 2 中处理

ASP.NET Core 5.0 JWT 身份验证引发 401 代码 [重复]