在 ASP.Net MVC 4 HTML 助手上设置 HTML 属性?

Set HTML attributes on ASP.Net MVC 4 HTML Helpers?

如果我像这样指定一个 HTML 表单元素,如文本字段:

@Html.TextBox(m => m.UserName)

如何向它添加其他标准 HTML 属性,例如'class'、'id'、'placeholder' 等...

您可以使用InputExtensions.TextBox Method (HtmlHelper, String, Object, Object)

示例:

@Html.TextBox(m => m.UserName, "<<NameOfTextBox>>", "<<Value>>", new { @class="MyClass", placeholder="placeholder" })

像这样:@Html.TextBox(m => m.UserName, new{@id = id, @class = yourClassName})

@Html.TextBox(m => m.UserName, 新 { 占位符 = "type a name..." } )

或 [显示名称("Name")] public 字符串名称{ get;放; }

@模型字符串

@Html.TextBoxFor(m => m, new { @placeholder = ViewData.ModelMetadata.DisplayName })

Hai 请使用 Class 和 patchholder 如下所示

@Html.TextBox(m => m.UserName, new { @placeholder = "User Name", @class = "txt" })

存在超载

public static MvcHtmlString TextBoxFor<TModel, TProperty>(
    this HtmlHelper<TModel> htmlHelper,
    Expression<Func<TModel, TProperty>> expression,
    Object htmlAttributes
)

您必须在 class 前加上 @bc,它是一个保留关键字,但其他关键字不需要它

@Html.TextBoxFor(m => m.UserName, new {@class = "btn btn-primary", placeholder="Enter text Here"})