Ich möchte einen Eingabe-Tag-Helfer mit Rasierer-Code kombinieren, um ein Attribut zu setzen, aber ich kann nicht die beiden Technologien zusammen zu bekommen. Ich versuche einfach, das deaktivierte Attribut für das Eingabefeld basierend auf dem Wert der Ansichtsmodelleigenschaft festzulegen.ASP.NET Kern Eingabe Tag Helfer nicht mit Razor Code arbeiten
Wenn ich den Rasierer Code setzen nach dem asp-for
Tag der Rasierer Intellisense nicht erkannt wird und das Feld nicht wie erwartet deaktiviert ...
<input asp-for="OtherDrugs" @((Model.OtherDrugs == null) ? "disabled" : "") class="form-control" />
gerenderte Ausgabe ...
<input type="text" id="OtherDrugs" name="OtherDrugs" value="" />
Wenn ich den Rasierklingen-Code vor dem Tag asp-for
setze, wird der Tag-Helfer intellisense nicht erkannt und das Feld wird nicht mit den Eigenschaften des Ansichtsmodells wie erwartet eingestellt ...
<input @((Model.OtherDrugs == null) ? "disabled" : "") asp-for="OtherDrug" class="form-control" />
gerenderte Ausgabe ...
<input disabled asp-for="OtherDrugs" class="form-control" />
Beachten Sie, dass Helfer und Rasierer-Tag kombiniert funktioniert, wenn der Rasierer-Code innerhalb einer Klasse Attribut ist. Leider erfordern Eingabefelder das deaktivierte Attribut und nicht die deaktivierte Klasse für den Bootstrap 3.
Gibt es eine Möglichkeit, dies zu erreichen?
Ich habe TagHelpers nicht verwendet, also bin ich hier im Dunkeln schießen, können Sie das ternary in wickeln? –
JB06