So fügen Sie in razor MVC 4 eine zweite CSS-Klasse mit einem bedingten Wert hinzu

Während Microsoft einige erstellt hatautomagisches Rendern von HTML-Attributen In Razor MVC4 habe ich einige Zeit gebraucht, um herauszufinden, wie eine zweite CSS-Klasse für ein Element basierend auf einem bedingten Rasiererausdruck gerendert werden kann. Ich möchte es mit Ihnen teilen.

Basierend auf einer Modelleigenschaft @ Model.Details möchte ich ein Listenelement ein- oder ausblenden. Wenn es Details gibt, sollte ein Div angezeigt werden, andernfalls sollte es ausgeblendet werden. Mit jQuery muss ich lediglich eine Klasse show oder hide hinzufügen. Für andere Zwecke möchte ich auch eine weitere Klasse "Details" hinzufügen. Mein Aufschlag sollte also sein:

<div class="details show">[Details]</div> oder<div class="details hide">[Details]</div>

Im Folgenden zeige ich einige fehlgeschlagene Versuche (resultierender Aufschlag, vorausgesetzt, es gibt keine Details).

Diese:<div @(@Model.Details.Count > 0 ? "class=details show" : "class=details hide")>,

wird dies rendern:<div class="details" hide="">.

Diese:<div @(@Model.Details.Count > 0 ? "class=\"details show\"" : "class=\"details hide\"")>.

wird dies rendern:<div class=""details" hide&quot;="">.

Diese:<div @(@Model.Details.Count > 0 ? "class='details show'" : "class='details hide'")>

wird dies rendern:<div class="'details" hide&#39;="">.

Keine dieser Angaben ist korrekt.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage