2010-06-08 58 views
1

如果值恰好爲負值,如何有條件地將樣式'color:red'添加到.CurrentDifference中?根據條件將顏色樣式添加到值

謝謝, 杆。

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

回答

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> 

注意這是非常草率的。我會考慮把這個邏輯放在你的Controller Action中,而不是在你的View中添加條件邏輯。也許使用tempdata或甚至在你的模型中公開一個新字段。

+0

@ J.H。 - 對於顏色和string.empty? – Rod 2010-06-08 18:16:48

+1

即時通訊假設你在我的回答下面提到我的評論。是的,我會嘗試從視圖中刪除邏輯,並以某種方式在Controller操作中應用該邏輯。通過這種方式,您的視圖更清晰一些,您的控制器操作中的調試過程可以更容易地遵循您的視圖中的<%=%>標籤。 – 2010-06-08 18:23:17

+0

@ J.H。 - 是的,我剛纔提到你的評論。謝謝你的洞察力,棒。 – Rod 2010-06-08 18:28:44

1

我會爲您的樣式表添加一個紅色的類。然後有條件地將該類應用於跨度。

<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>