我熟悉使用该Html.TextBox
方法呈现文本框。假设我想编写一个类似于 的方法Html.TextBox
,但需要一个名为的附加字符串属性Abc
,该属性会像 TextBox 一样呈现一个 TextBox,但添加一个data-abc
使用 指定的值调用的属性Abc
。
有什么好方法可以做到这一点?
我熟悉使用该Html.TextBox
方法呈现文本框。假设我想编写一个类似于 的方法Html.TextBox
,但需要一个名为的附加字符串属性Abc
,该属性会像 TextBox 一样呈现一个 TextBox,但添加一个data-abc
使用 指定的值调用的属性Abc
。
有什么好方法可以做到这一点?
将属性 data_abc 添加到可选参数中,它将添加为 data-abc。
@Html.TextBox("Name", "Default Value", new { data_abc = "data" });
祝你好运!
这是我想出的似乎可行的方法:
public static MvcHtmlString MyTextBox<T>(this HtmlHelper helper, string name, string value, object htmlAttributes, string Abc)
{
IDictionary<string, object> myHtmlAttributes = new RouteValueDictionary(htmlAttributes);
myHtmlAttributes.Add("data-abc", Abc);
return helper.TextBox(propertyName, value, myHtmlAttributes);
}