2016-01-18 2 views
13

В ASP.NET MVC можно использовать:Set Default/Значение Null с Select TagHelper

@Html.DropDownListFor(model => model.Category, ViewBag.Category as IEnumerable<SelectListItem>, "-- SELECT --", new { @class = "form-control" }) 

Использование asp.net 5, как я включаю по умолчанию или нулевое значение (- SELECT -) в taghelper:

<select asp-for="Category" asp-items="@ViewBag.Category" class="form-control"></select> 

ответ

21

Вы можете просто вставить пункт меню внутри выберите:

<select asp-for="Category" asp-items="@ViewBag.Category" class="form-control"> 
    <option disabled selected>--- SELECT ---</option> 
</select> 

Ключевое слово disabled в приведенном выше коде означает, что строка «--- SELECT ---» не может быть выбрана снова, как только выбор был выбран в списке. Если вы хотите, чтобы пользователь мог снова очистить выбор (т. Е. Если он привязан к полю с нулевым значением), просто опустите его.

+1

Так просто, как только вы знаете, как, благодаря Matt. – Reafidy

+1

спасибо, это помогло мне! –

+1

Мне нужно было установить значение параметра в пустую строку, чтобы позволить пользователю обнулить нулевое поле int null: DeveloperDan

0

Если вы используете ASP-элементы для вашей модели, он использует значение 0 для выбранного элемента, если у вас есть тег <option> с вашей строкой по умолчанию, без значения,

Вы должны использовать цикл для <option> и поставить опцию по умолчанию вне цикла. Это пример для .Net Ядра с использованием АСП-элементов:

<select asp-for="DepartmentUnit" asp-items="@Model.DepartmentUnits" class="form-control"></select> 

и теперь это еще один пример использования цикла:

<select> 
<option val="">--Select--</option> 
foreach(item in Model.DepartmentUnits) 
{<option val="@item.val">@item.title</option>} 
</select>