2010-12-07 4 views
1

Ich versuche, herauszufinden, wie ich einen Zustand in meiner Schleife setzen kann, wie ich Liste Artikel drucken ...ASP.NET MVC 2 C#: Kurze Hand IF innerhalb der Schleife?

<ul> 
    <% foreach (var filter in Model.Filter) 
    { %> 

    <li <% filter.TagChecked == 1 ? //yes : //no %>><%: filter.TagLabel %> <span class="closeImage"><img src="/Content/Images/filterButtonClose.gif" /></span></li> 

    <% } %> 
</ul> 

Ich versuche, wenn ein Filter sehen geprüft ... wenn ja Dann muss ich die Klasse schreiben und das Bild hinzufügen. Wenn nicht, dann schreiben Sie einfach eine normale li

Antwort

2

einfach die benötigte String zurück:

<%: filter.TagChecked == 1 ? " class=\"myclass\"" : string.Empty %> 
+0

Gibt es Gründe, warum Sie wählten string.Empty zu verwenden, wie „auf“ dagegen? – dcolumbus

+1

@dcolumbus - Ich mag nur die Explizität davon. Es bewertet dasselbe. – Oded

3
<ul> 
<% foreach (var filter in Model.Filter) 
{ %> 

<li <%: filter.TagChecked == 1 ? "class=\"some-class\"" : "" %>><%: filter.TagLabel %> <span class="closeImage"><img src="/Content/Images/filterButtonClose.gif" /></span></li> 

<% } %> 
</ul> 
+2

Mit .NET 4.0 ist es besser, '<%:%>' anstelle von '<%=%>' zu verwenden, da es HTML-Codierung hinzufügt. – Oded

+0

Sie haben Recht - alte Gewohnheiten sterben hart :-) – Rob

+0

Vielen Dank Jungs. – dcolumbus