Установить значение по умолчанию / Null с помощью Select TagHelper

In asp.net mvc вы можете использовать:

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

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

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

2 ответов


вы можете просто вставить элемент опции внутри select:

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

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


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

вы должны использовать цикл для <option> и поместите опцию по умолчанию из цикла. Это пример для .Net Core с использованием asp-items:

<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>