1

我想向 selectfor 添加一个类

但我得到一个错误

@Html.SelectFor(m => m.foo, optionLabel: null, new { @class = "foo12" })

使用文本框可以工作:

@Html.TextBoxFormattedFor(m => m.foo, new { @class = "foo" })

我得到的错误:

命名参数规范必须出现在所有固定参数指定之后。

4

1 回答 1

1

错误是不言自明的——任何命名参数(在本例中为“optionLabel”)都必须在未命名参数之后。所以代替这个:

@Html.SelectFor(m => m.foo,      // 1
    optionLabel: null,           // 2
    new { @class = "foo12" }     // 3
)

我猜你可能想要这个:

@Html.SelectFor(m => m.foo,                      // 1
    optionLabel: null,                           // 2
    htmlAttributes: new { @class = "foo12" }     // 3
)

编辑

当然你的意思是DropDownListFor,而不是“SelectListFor”?您还需要提供选项。像这样的东西:

@{ 
    var selectList = new SelectListItem[] 
    { 
        new SelectListItem { Text = "text", Value = "value" },
    };
}
@Html.DropDownListFor(m => m.foo, 
    selectlist: selectlist,
    htmlAttributes: new { @class = "foo" }
)
于 2013-09-12T21:16:29.493 回答