0

asp.net mvc ページがあり、このページのように背景色が異なるドロップダウン リストが必要です

ドロップダウンリストを表示する次のコードがあります

<label>Data Source: </label><% = Html.DropDownList("DataSource", Model.CalendarDataSources, new { @id = "calendarDSDropdown", @class = "calendarDSDropdown" })%>

私のビューモデルには次のものがあります:

    public IEnumerable<SelectListItem> CalendarDataSources;

サーバーに入力しています。各 SelectListItem に異なるバックログを追加したいのですが、選択リスト項目にはName、Id、Selectedプロパティしかないため、その方法がわかりません

これは可能ですか

4

1 に答える 1

1

残念ながら、組み込みのヘルパーでは、生成されたタグに属性DropDownListを設定することはできません。これを実現するには、独自のヘルパーをロールする必要があります。styleoption

別の方法として、jQuery を使用して色を設定することもできます。

$(function() {
    $('select#DataSource option').each(function() {
        var option = $(this);
        option.css(
            'background-color', 
            someFunctionThatMapsTheOptionValueToAColor(option.val())
        );
    });
});
于 2010-09-02T11:13:26.983 に答える