2014-02-23 40 views
5

我有一個對象,其中有一個名爲changeColor的變量。在我的html表格中,如果changeColor爲真,我想更改單元格顏色。我正在使用角度。角度:如果條件爲真如何更改單元格的顏色

<tr ng-repeat="list in results"> 
    <% if (!{{list.changeColor}}) %> 
    <% { %> 
     <td bgcolor="red">{{list.value}}</td> 
    <% } %> 
    <td>{{list.price}}</td> 

但經過測試它始終是紅色,<% if (!) %> <% { %> <% } %>被寫在我的html頁面!你能幫我麼?

測試這

<td style=".red {bgcolor: red;} .black {bgcolor: black;}" 
ng-class='{red : list.changeColor, black: !list.changeColor}'> 
{{list.price}}</td> 

但它不工作

回答

22

你必須使用ng-class

<tr ng-repeat="list in results"> 
    <td ng-class='{red : list.changeColor, black: !list.changeColor}'>{{list.value}}</td> 
    <td>{{list.price}}</td> 
</tr> 

CSS

<style type="text/css"> 
.red { 
    color: red; 
} 

.black { 
    color: black; 
} 
</style> 
+0

感謝費澤爾汗。 .js文件應該如何顯示?我是新角度 – Sara

+0

你不需要對JavaScript做任何事情。我想,你只想通過布爾標誌來改變顏色。 –

+0

我不喜歡這個\t \t \t \t \t \t \t' {{list.price}}'html中inspect元素的輸出就像'ng-binding red'這是正確的,但是bgcolor沒有改變爲什麼?內聯樣式不正確 – Sara

6

不要把這麼多的邏輯在你的意見。試試這個:

ngClass directive

它可以讓你改變基於表達式的TD類。

相關問題