У меня есть помощник по тегам, styled-checkbox
, который оборачивает <input type="checkbox">
и добавляет другие элементы, чтобы я получил флажок в индивидуальном стиле. Последний отображаемый флажок имеет следующую структуру DOM:
<span>
<input type="checkbox"...>
<label..>
<input type="hidden"..>
</span>
Чтобы сделать это, мой TagHelper изменяет TagName, а затем добавляет HTML:
public override async Task ProcessAsync(TagHelperContext context, TagHelperOutput output)
{
output.TagName = "span";
StringBuilder content = new StringBuilder("");
content.Append($@"<input type=""checkbox"" value=""true"" name=""{Name}"" ... />");
... more content Appending here ...
output.Content.SetHtmlContent(content.ToString());
}
Однако любые атрибуты данных, которые я добавляю в свой тег при его использовании, добавляются к span
. Я хочу, чтобы они вместо этого были добавлены к элементу input
- возможно ли это?
например:.
<styled-checkbox data-foo="bar"></styled-checkbox>
В этом примере я хочу, чтобы атрибут 'data-foo' был добавлен к входу флажка - но я не вижу способа сделать это, возможно?