создание выпадающего списка из ViewData - PullRequest
0 голосов
/ 22 июля 2010

Кто-нибудь знает, почему приведенный ниже код не дает мне никакого значения, а вместо этого дает мне "System.Web.Mvc.SelectListItem"?

Если я не сделаю foreach, а вместо этого заменю ViewData на

<%= Html.DropDownList("PersonOnCallCheckBoxList") %>, я получу правильное значение.Пожалуйста, помогите.

foreach (var person in ViewData["Person"] as IEnumerable)
{
%>
   <input type="checkbox" value="<%= person %>" /><%= person %><br />
<%
}

Ответы [ 2 ]

3 голосов
/ 22 июля 2010

Поскольку человек является SelectListItem.

используйте person.Text для получения отображаемого текста и person.Value для получения значения

Html.DropDownList создан для работы с SelectListItems, поэтому он работает правильно, но если вы вручную работаете с Элементами, вам придется самостоятельно получать значение и текст.

0 голосов
/ 23 июля 2010
          <%
            var list = this.ViewData["Persons"] as SelectList;

            foreach (var person in list)
            {
              %>
                  <input id="cbPerson" type="checkbox" value="<%= person.Value %>" />
                  <label for="cbPersonOnCall"><%= person.Text %></label><br />
              <%
            }
          %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...