Ich sehe keine Tag-Helfer für Radio-Schaltflächen in ASP.NET 5 MVC 6. Was ist die richtige Art der Handhabung von Formularelementen, wo ich Radio-Schaltflächen verwenden müssen?Radio Button-Tag-Helfer in ASP.NET 5 MVC 6
Antwort
Es gibt einen TagHelper für alle Eingabetypen, der auch den Radioknopftyp enthält. Vorausgesetzt, dass Sie diese eine Ansicht Modell wie haben
public class CreateUserVm
{
public string UserName { set; get; }
public IEnumerable<RoleVm> Roles { set; get; }
public int SelectedRole { set; get; }
}
public class RoleVm
{
public int Id { set; get; }
public string RoleName { set; get; }
}
Und in Ihrer GET Aktion,
public IActionResult Index()
{
var vm = new CreateUserVm
{
Roles = new List<RoleVm>
{
new RoleVm {Id = 1, RoleName = "Admin"},
new RoleVm {Id = 2, RoleName = "Editor"},
new RoleVm {Id = 3, RoleName = "Reader"}
}
};
return View(vm);
}
In der Ansicht können Sie einfach Markup für den Input-Tag verwenden.
@model YourNamespaceHere.CreateUserVm
<form asp-action="Index" asp-controller="Home">
<label class="label">User name</label>
<div class="col-md-10">
<input type="text" asp-for="UserName" />
</div>
<label class="label">Select a Role</label>
<div class="col-md-10">
@foreach (var item in Model.Roles)
{
<input asp-for="SelectedRole" type="radio" value="@item.Id" /> @item.RoleName
}
</div>
<input type="submit" />
</form>
Wenn Sie Ihr Formular veröffentlichen, die Rold Id für die ausgewählte Rolle wird
Denken Sie daran, in der SelectedRole
Eigenschaft sein, dass der obige Code Rasierer wird Eingabeelement mit gleichenId
Attributwert generieren und name
Attributwert für jeden von der Schleife erzeugten Eingang. Im obigen Beispiel generiert es 3 Eingabeelemente (Optionsfeldtyp) mit dem Attributwert Id
und name
SelectedRole
. Modellbindung funktioniert, da der name
-Attributwert mit dem Eigenschaftsnamen (SelectedRole
) in unserem Ansichtsmodell übereinstimmt, aber die doppelten ID-Attributwerte Probleme mit dem clientseitigen Code verursachen (doppelte IDs in einem Dokument sind ungültig)
- 1. ASP.NET 5 MVC 6 + Rest API Identität
- 2. ASP.NET 5 (MVC 6) - Lokalisierung der Ressourcen
- 3. Asp.net 5 (und MVC 6) Hosting
- 4. Ersatz für @helper in ASP.NET 5/asp.net mvc 6
- 5. Ein angepasster IRouter in ASP.NET 5 (vNext) MVC 6
- 6. Get Client IPv4 in ASP.NET 5 MVC 6
- 7. Übereinkommen aufgrund Bindung in ASP.NET 5/MVC 6
- 8. PushStreamContent in asp.net 5/mvc 6 funktioniert nicht
- 9. Asp.Net 5 MVC 6 Startup.cs Montage Entkopplung in Beta8
- 10. Anwendungseinstellungen in benutzerdefinierten Klasse ASP.Net 5 MVC 6
- 11. Wohin ging RenderPartial() in ASP.Net 5 MVC 6?
- 12. Razor Motor arbeitet nicht in ASP.net 5 MVC 6
- 13. Verwirrt mit Fehlerbehandlung in ASP.net 5 MVC 6
- 14. ASP.NET 5/MVC 6, Verwendung der Sitzung in der Klassenbibliothek?
- 15. asp.net mvc radio button state
- 16. Sichern der gesamten ASP.NET 5 MVC 6-Anwendung
- 17. Wie man einen globalen Filter mit mvc 6, asp.net 5
- 18. ASP.NET 5 MVC 6 Identität 3 Rollen Claims Groups
- 19. ASP.NET 5 MVC 6 Dependency Injection mit mehreren Konstruktoren
- 20. ASP.NET MVC 5 6 DI: Serviceprovider nicht Typ Lösung
- 21. ASP.NET 5/MVC 6 Ajax-Post-Modell zu Controller
- 22. ASP.NET MVC-Bereitstellung zu IIS 5/6 mit virtuellem Verzeichnis
- 23. ASP.net 5 MVC 6 bower.json und project.json verschwinden
- 24. ASP.Net MVC 5 6, wie Error.cshtml Antwort als Standardfehler
- 25. Asp.net MVC 5 Routing
- 26. ASP.NET MVC 5 Fehlerbehandlung
- 27. Asp.NET MVC 5 Trace
- 28. Cookies in ASP.Net MVC 5
- 29. ClaimsIdentity in ASP.NET MVC 5
- 30. HandleUnknownAction in ASP.NET 5
I ' m Verwenden eines JS-click-Ereignisses auf dem Optionsfeld zum Übergeben an das Formular, jedoch wird der Wert aus dem Radio niemals an meine Aktionsmethode übergeben. Muss ich den Namen oder die ID-Attribute des Radio-Eingangs auf etwas Bestimmtes setzen? –
Das Festlegen des Namensattributs hat den Trick gemacht –
Frage: Konnte ich den Wert auf wahr oder falsch setzen? 'Wert =" wahr "'? –