DropdownFor并在每个<option>上分配Class

时间:2019-12-12 17:54:47

标签: javascript c# html asp.net asp.net-mvc

有什么办法可以得到dropdownfor来处理将类添加到每个选项的情况,而该类是选项的文本?因此,例如:

<option class = "Example-1" value = "101" >Example 1<option>
<option class = "Example-2" value = "102" >Example 2<option>
<option class = "Example-3" value = "103" >Example 3<option>

这是否可行,还是我需要查看javascript / jquery解决方案?

1 个答案:

答案 0 :(得分:2)

默认的DropDownListFor助手不允许使用,但是您可以自己创建select元素。

<select name="@Html.NameFor(m => m.MyProperty)" id="@Html.IdFor(m => m.MyProperty)">
    @foreach (var example in examples) 
    {
        <option value="@example.Value" class="@example.CssClass" @(Model.MyProperty == example.Value ? "selected" : "")>@example.Text</option>
    }
</select>

使用NameForIdFor将使模型绑定正常工作。