12

我需要同时在@Html.TextBox mvc4 中添加css 类和id。我试试

@Html.TextBox("name", new { id = "name"}, new { @class = "text-field" })

但结果我得到

 <input class="text-field" id="name" name="name" type="text" value="{ id = name }">

我在这里不需要属性值。
我需要得到

 <input type="text" value="" name="name" id="name" class="text-field" />
4

3 回答 3

25

正确的重载方法

public static MvcHtmlString TextBox(
    this HtmlHelper htmlHelper,
    string name,
    Object value,
    Object htmlAttributes
)

你想id用作 HtmlAttribute,所以你应该在 HtmlAttributes 对象中使用它。的正确用法TextBox是:

@Html.TextBox("name", 
    null,
    new { 
        id = "name", 
        @class = "text-field" 
})

如果你放置id在路由对象中,那么 id 将是一个路由值。

于 2013-05-20T06:43:07.793 回答
5

尝试

@Html.TextBox("name", 
    null,
    new { 
        id = "name", 
        @class = "text-field" 
    })
于 2013-05-20T06:42:04.447 回答
1

我只是使用new关键字。例如看下面的代码

@Html.TextBoxFor(m => m.Venue, new { @class = "form-control", @id = "AnyCustomID" })
于 2016-07-24T16:37:56.537 回答