Какое значение по умолчанию для "optionLabel" HTML DropDownList? - PullRequest
3 голосов
/ 18 января 2012

Так что, если установить DropDownList, где текст: "people names" (string) и значение: studentID (int).на мой взгляд, вот так (при условии, что myDDL - это данные из выделенного кода, помещенные в пакет просмотра)

     @Html.DropDownList("myDDL", (IEnumerable<SelectListItem>)ViewBag.myDDL,  
     "Select Stuff", new Dictionary<string,object>{
      {"class","dropdowns"},{"id","myDDL"}})  

Каково значение «Выбрать материал», который является необязательной меткой, которая появляется в начале раскрывающегосяlist?

Я хотел бы получить значение, потому что если оно не выбрано, я бы хотел получить все данные.

Спасибо!

Ответы [ 3 ]

7 голосов
/ 18 января 2012

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

<select name="selectedValue">
    <option value="">Select Stuff</option>
    ...
</select>

Также вы, похоже, используете myDDL в качестве первого аргумента и второго из помощника выпадающего списка, что неверно. Первый аргумент - это свойство, которое будет использоваться для получения выбранного значения. Второе - это доступные значения, которые должны быть IEnumerable<SelectListItem>.

Так что-то вроде этого имело бы больше смысла:

@Html.DropDownList(
    "selctedValue",
    (IEnumerable<SelectListItem>)ViewBag.myDDL,
    "Select Stuff", 
    new { @class = "dropdowns", id = "myDDL" }
)

Но что действительно имеет смысл, и я бы порекомендовал вам избавиться от этого ViewBag и использовать модель представления и строго типизированную версию этого помощника:

@model MyViewModel
...
@Html.DropDownListFor(
    x => x.SelectedValue,
    Model.MyDdlItems,
    "Select Stuff", 
    new { @class = "dropdowns", id = "myDDL" }
)
2 голосов
/ 18 января 2012

Это пустая строка.Документация охватывает это (выделено мной):

optionLabel

Тип: System.String

Текст дляпо умолчанию пустой элемент.Этот параметр может быть нулевым.

0 голосов
/ 09 июля 2013

Вы можете попытаться добавить ложное значение в список объектов внутри выпадающего списка, который принимает inn value = "None" / "select stuff" и id = 0. В котором это поможет вам создать поддельное значениегде пользователь может выбрать значение в раскрывающемся списке, и вы должны быть в состоянии обработать его в коде бэкэнда.Надеюсь это поможет.

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