webentwicklung-frage-antwort-db.com.de

Legen Sie mit Select TagHelper den Standard-/Nullwert fest

In asp.net mvc können Sie Folgendes verwenden:

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

Wie füge ich mit asp.net 5 den Standard- oder Nullwert (- SELECT -) in einem Taghelper ein:

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

Sie können einfach ein Optionselement in das select einfügen: 

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

Das Schlüsselwort disabled im obigen Code bedeutet, dass die Zeile "--- SELECT ---" nicht erneut ausgewählt werden kann, nachdem eine Auswahl in der Liste ausgewählt wurde. Wenn Sie möchten, dass der Benutzer die Auswahl erneut löschen kann (d. H., Wenn er an ein Feld mit Nullwert gebunden ist), lassen Sie ihn einfach deaktiviert.

42
Matt

Wenn Sie asp-items für Ihr Modell verwenden, wird für das ausgewählte Element der Wert 0 verwendet. Wenn Sie das Tag <option> mit Ihrer Standardzeichenfolge ohne Wert haben,

Sie müssen eine Schleife für <option> verwenden und Ihre Standardoption aus der Schleife ..__ entfernen. Dies ist ein Beispiel für .Net Core, das asp-items verwendet:

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

und jetzt ist dies ein weiteres Beispiel für die Verwendung der Schleife:

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

Wenn Sie den Wert null in der Datenbank speichern möchten, verwenden Sie <option selected value="">Full Access</option>