您可以通过实现ITagHelper便捷类或从便捷类派生来创建自己的标记帮助器TagHelper。
默认约定是将与帮助程序名称匹配的html标签作为目标,而不带可选的TagHelper后缀。例如WidgetTagHelper将目标<widget>代码定位。
该[HtmlTargetElement]属性可用于进一步控制要定位的标签
可以在剃刀标记中为该类的任何公共属性提供值作为属性。例如,public string Title {get; set;}可以给公共财产一个值,例如<widget title="my title">
默认情况下,标记助手将Pascal大小写的C#类名称和标记助手的属性转换成小写的kebab大小写。例如,如果您省略了使用[HtmlTargetElement],而类名是WidgetBoxTagHelper,则在Razor中您将编写<widget-box></widget-box>。
Process并ProcessAsync包含渲染逻辑。两者都接收一个上下文参数,其中包含有关正在渲染的当前标签的信息,以及一个用于自定义渲染结果的输出参数。
包含自定义标签帮助程序的所有程序集都需要添加到_ViewImports.cshtml文件中(请注意,这是正在注册的程序集,而不是名称空间):
@addTagHelper *, MyAssembly
下面的示例创建一个自定义的小部件标签帮助程序,该工具将针对剃刀标记,例如:
<widget-box title="My Title">This is my content: @ViewData["Message"]</widget-box>
它将呈现为:
<div class="widget-box"> <div class="widget-header">My Title</div> <div class="widget-body">This is my content: some message</div> </div>
创建此类标签帮助程序所需的代码如下:
[HtmlTargetElement("widget-box")] public class WidgetTagHelper : TagHelper { public string Title { get; set; } public override async Task ProcessAsync(TagHelperContext context, TagHelperOutput output) { var outerTag = new TagBuilder("div"); outerTag.Attributes.Add("class", output.TagName); output.MergeAttributes(outerTag); output.TagName= outerTag.TagName; //创建标题 var header = new TagBuilder("div"); header.Attributes.Add("class", "widget-header"); header.InnerHtml.Append(this.Title); output.PreContent.SetHtmlContent(header); //创建正文并替换原始标签帮助程序内容 var body = new TagBuilder("div"); body.Attributes.Add("class", "widget-body"); var originalContents = await output.GetChildContentAsync(); body.InnerHtml.Append(originalContents.GetContent()); output.Content.SetHtmlContent(body); } }
本文向大家介绍asp.net-core 选择标签助手,包括了asp.net-core 选择标签助手的使用技巧和注意事项,需要的朋友参考一下 示例 假设您的视图被强类型化为这样的视图模型 在GET操作方法中,您将创建此视图模型的对象,设置Categories属性并将其发送到视图 在你看来 这将呈现以下标记(仅包括表单/字段的相关部分) 在表单提交中获取选定的下拉值 您可以使用与HttpPost操作方
本文向大家介绍asp.net-core 表单标签助手-基本示例,包括了asp.net-core 表单标签助手-基本示例的使用技巧和注意事项,需要的朋友参考一下 示例
本文向大家介绍asp.net core标签助手的高级用法TagHelper+Form,包括了asp.net core标签助手的高级用法TagHelper+Form的使用技巧和注意事项,需要的朋友参考一下 上一篇博客我讲解了TagHelper的基本用法和自定义标签的生成,那么我就趁热打铁,和大家分享一下TagHelper的高级用法~~,大家也可以在我的博客下随意留言。 对于初步接触asp.net c
问题内容: Asp.net Core中是否有Ajax帮助器标签文档的任何链接。我正在尝试使用asp.net核心学习ajax,但没有找到相关文档。在asp.net mvc中,我们使用@ Ajax.Form,然后使用AjaxOptions方法来处理ajax。经过数小时的搜索,我找到了此链接。 https://dotnetthoughts.net/jquery-unobtrusive-ajax-help
问题内容: 我正在构建一个实现HTML5音频标签的音乐播放器Web应用程序,但是希望它在所有浏览器中看起来都一样-是否可以定义我自己的自定义CSS?如何? 问题答案: 当前尚无使用CSS设置HTML5 播放器样式的方法。相反,您可以不使用该属性,而使用Javascript实现自己的控件。如果您不想自己全部实现它们,建议您使用现有的主题化HTML5音频播放器
主要内容:自定义标签的语法,简单示例,tld标签库描述文件,自定义标签属性,自定义标签的标签体自定义标签就是用户(开发者)自己定义的标签。自定义标签可以让 JSP 页面中不含有 Java 代码,只含有 HTML 代码和部分标签,就能实现业务逻辑的调用。 自定义标签的优点如下: 减少 JSP 页面对脚本的需求和依赖性 将 JSP 页面和业务逻辑分开,增加了程序的可维护性 可重复调用相同的业务逻辑,增加了程序的可重用性 使用自定义标签步骤如下: 自定义标签实现类 编写 tld 标签库描述文件