Как сделать значение по умолчанию выделенным или сфокусированным на списке раскрывающегося списка - PullRequest
0 голосов
/ 25 марта 2019

Я уже получил значение по умолчанию, и это значение уже стало значением по умолчанию, но значение по умолчанию не имеет выделения или фокуса в раскрывающемся списке.

Я использую функцию SelectItemList.

Контроллер:

private List<SelectListItem> SelectWeek() {
    using(var db = new UsersContext()) {
        int currentYear = DateTime.Now.Year;
        selectListItems = db.WorkWeekDetails
            .Where(item = >item.YEAR == currentYear).OrderBy(item = >item.WORKWEEK)
            .Select(a = >new SelectListItem() {
                Text = a.WORKWEEK,
                Value = a.WORKWEEK
        }).ToList();

        selectListItems.Insert(0, new SelectListItem() {
            Text = www,  //www = "WW13"
            Value = www, //www = "WW13"
            Selected = true
        });
    }
    return ViewBag.WorkWeek = selectListItems;
}

CSHTML:

@Html.DropDownList("WorkWeek", (List<SelectListItem>)ViewBag.WorkWeek, new { @class = "form-control", required = "required" })

Я хочу, чтобы "WW13" было значением по умолчанию, а это значение было выделено в раскрывающемся списке.

//Example list of dropdownlist :

WW13 // This value will be the default.
ww01
ww02
ww03
ww04
ww05
ww06
ww07
ww08
ww09
ww10
ww11
ww12
ww13 // This value will be highlighted.
ww14
...

Раскрывающийся список:

[dropdown list]

1 Ответ

0 голосов
/ 25 марта 2019

Как сказал @Aarif, вы можете использовать jquery, чтобы выделить выбранную опцию ... что-то вроде этого

Также я думаю, что вы, вероятно, должны пропустить свой выпадающий список через модель View, а не в viewbag

window.onload = function() {
highlightSelected()
};
function highLightSelected(){

    var model = @Html.Raw(Json.Encode(ViewBag.WorkWeek));

     foreach(var item in model){
         if(item.selected == true){
         $("#mydropdownlist").val(item.value);
         $("#mydropdownlist").addClass('active');
        }
    }
}

Синтаксис может быть не точным, но идея состоит в том, чтобы проверить ваш список SelectedListItem, чтобы найти тот, который выбран, и установить для него значение раскрывающегося списка, а также добавить класс, который выделит выбранное значение, ноне забудьте удалить этот класс при изменении значения выпадающего списка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...