TagBuilder - закрывающие теги не работают
У меня проблема с пользовательским помощником HTML. Я пытаюсь создать помощника, используя TagBuilder, но не могу его закрыть.
Вот мой код:
public static HtmlString CustomHelper(this HtmlHelper htmlHelper,
string id)
{
var contentDiv = new TagBuilder("div");
contentDiv.MergeAttribute("style", "display:inline-block");
var input = new TagBuilder("input");
input.AddCssClass("forDD");
input.MergeAttribute("type", "hidden");
input.MergeAttribute("id", id);
input.MergeAttribute("value", "Cat");
contentDiv.InnerHtml += input;
return new HtmlString(contentDiv.ToString(TagRenderMode.EndTag));
}
Но результат выглядит так:
Что-то не так, но я не могу понять, что, я скучаю по этому. Даже закрытие input
тег неверен. Я проверил версию DLL и попытался с MvcHtmlString и т. Д. Так же TagRenderMode
не работает вообще.
Спасибо за помощь.
С наилучшими пожеланиями.
1 ответ
Попробуйте это, это сработало для меня. Нет необходимости использовать TagRenderMode.EndTag.
public HtmlString CustomHelper( string id)
{
var contentDiv = new TagBuilder("div");
contentDiv.MergeAttribute("style", "display:inline-block");
var input = new TagBuilder("input");
input.AddCssClass("forDD");
input.MergeAttribute("type", "hidden");
input.MergeAttribute("id", id);
input.MergeAttribute("value", "Cat");
contentDiv.InnerHtml += input;
return new HtmlString(contentDiv.ToString());
}
Любой мой результат
<div style="display:inline-block"><input class="forDD" id="3" type="hidden" value="Cat"></input></div>