2015-12-02 4 views
0

Я не понимаю, почему начальное значение не выбрано при загрузке формы.DropDownListFor начальное значение не выбрано

Вот мой код

model.LUIsUsed = new List<SelectListItem>() 
         { 
          new SelectListItem { Value = "0", Text = "Ignore" }, 
          new SelectListItem { Value = "1", Text = "Required" }, 
          new SelectListItem { Value = "2", Text = "Optional" }, 
         }; 

На мой взгляд

@Html.DropDownListFor(x => x.Foo[i].IsUsed, Model.LUIsUsed, new { @class= "form-control input-sm is-used" }) 

x.Foo[i].IsUsed значение "1", но required не выбран. Я не могу понять, почему.

Это потому, что x.Foo - это массив?

EDIT: Когда я не использую массив, он работает

+0

Вы видите это? Старый, но все еще может быть проблемой. http://stackoverflow.com/questions/10506828/mvc-2-dropdownlist-not-selecting-value-in-case-of-list –

ответ

0

Похоже, что есть проблема с DropDownListFor внутри for цикла.

Мне нужно было построить SelectList и указать выбранное значение.

@Html.DropDownListFor(x => x.Criterias[i].IsUsed, new SelectList(Model.LUIsUsed,"Value","Text", Model.Criterias[i].IsUsed)) 

Это работает, но я хотел бы знать, почему.

Смежные вопросы