asp.net-core - 空项目作为 HTML
问题描述
select
在 Razor 页面中,您可以通过执行类似以下操作为 a 指定一个空的第一项:
<select asp-for="SelectedTags" asp-items="Model.TagOptions">
<option value="">Choose a tag</option>
</select>
Tag Helper是否有一个选项,abp-select
例如:
<abp-select asp-for="Mentor.RegionId" asp-items="Model.Regions">
<option value="">Choose a region</option>
</abp-select>
解决方案
AbpSelectTagHelperService
从 ABP 4.3.0开始这是不可能的,因为output.Content
在不调用和使用output.GetChildContentAsync
.
public override async Task ProcessAsync(TagHelperContext context, TagHelperOutput output)
{
var innerHtml = await GetFormInputGroupAsHtmlAsync(context, output);
...
if (suppress)
{
output.SuppressOutput();
}
else
{
output.TagName = "div";
...
output.Content.SetHtmlContent(innerHtml);
}
}
protected virtual async Task<string> GetFormInputGroupAsHtmlAsync(TagHelperContext context, TagHelperOutput output)
{
var selectTag = await GetSelectTagAsync(context, output);
...
}
protected virtual async Task<TagHelperOutput> GetSelectTagAsync(TagHelperContext context, TagHelperOutput output)
{
...
var selectTagHelperOutput = await selectTagHelper.ProcessAndGetOutputAsync(GetInputAttributes(context, output), context, "select", TagMode.StartTagAndEndTag);
// selectTagHelperOutput.Content.SetHtmlContent(childContent); // Missing
...
}
参考:
推荐阅读
- angular - Angular 6 RXJS 过滤器等待订阅中的布尔值
- django-models - 最新的 Django 不支持从其他应用程序导入模型。请给我解决方案
- vue.js - Nuxt/Vue 反应体属性
- xaml - Windows UWP 中带有“Enter”键的虚拟键盘小键盘
- java - 是否可以暂停子线程然后回调父线程然后再次恢复子线程
- javascript - 如何从隐藏在选定行内的表中获取值
- vb.net - 小数的处理
- python - 从字典列表中获取键满足某个值的一定数量的项目
- javascript - 在分页部分动态选择每页的行数
- python - 我可以使用 xpath 添加新的匹配模式到现有列表吗?