2010-06-08 8 views
1

Comment est-ce que j'ajoute conditionnellement le style «color: red» à la propriété .CurrentDifference si la valeur est une valeur négative?Ajouter un style de couleur à la valeur en fonction de la condition

Merci, tige.

<div class="sRow"> 
    <div class="sLabel p40"> 
     Difference: 
    </div> 
    <%= (!String.IsNullOrEmpty(Model.Amount)?Model.Amount.CurrentDifference.ToString("c"):string.Empty) %> 
</div> 

Répondre

1
<div class="sRow"> 
    <div class="sLabel p40"> 
     Difference: 
    </div> 
    <span style="<%=Model.Amount.CurrentDifference < 0 ? "color: #FF0000": ""%>"> 
     <%= (!String.IsNullOrEmpty(Model.Amount)?Model.Amount.CurrentDifference.ToString("c"):string.Empty) %> 
    </span> 
</div> 

Notez ce qui est très bâclée. Je considérerais mettre la logique pour ceci dans votre action de contrôleur au lieu de mettre la logique conditionnelle dans votre vue. Peut-être utiliser tempdata ou même exposer un nouveau champ dans votre modèle.

+0

@ J.H. - pour la couleur et string.empty? – Rod

+1

im en supposant que vous vous référez à mon commentaire ci-dessous ma réponse. Oui, je voudrais essayer de supprimer la logique de la vue et appliquer cette logique dans l'action du contrôleur d'une certaine manière. De cette façon, votre vue est un peu plus propre et votre processus de débogage peut être suivi plus facilement dans votre action de contrôleur que les balises <%=%> de votre vue. –

+0

@ J.H. - Oui, je parlais de votre commentaire il y a un instant. Merci pour la perspicacité, la tige. – Rod

1

Je voudrais ajouter une classe à votre feuille de style pour la couleur rouge. Appliquez ensuite conditionnellement la classe à une étendue en tant que telle.

<div class="sRow"> 
    <div class="sLabel p40"> 
     Difference: 
    </div> 
    <span class='<%= (Model.Amount>0?"Currency":"CurrencyRed") %>' > 
    <%= (!String.IsNullOrEmpty(Model.Amount)?Model.Amount.CurrentDifference.ToString("c"):string.Empty) %> 
    </span> 
</div> 
Questions connexes