如何使用AngularJS在HTML中动态更改表格单元格的背景?
在下面的代码中,我想显示一个包含一堆名称和对象的包含状态的表。状态可以是VALID
(绿色背景)或INVALID
(红色背景)。
可以在我的<td>
HTML标记中解决此问题,还是必须继续使用CSS?
<table border="1">
<tr ng-repeat="object in Cmd.items">
<td>{{object.objectName}}</td>
<td>{{object.objectStatus}}</td> //this background should be colored
</tr>
</table>
答案 0 :(得分:2)
您可以使用ng-class
执行此操作:
<tr ng-repeat="object in Cmd.items">
<td>{{object.objectName}}</td>
<td ng-class="{'red': object.objectStatus === 'invalid', 'green': object.objectStatus === 'valid'}">{{object.objectStatus}}</td>
</tr>
答案 1 :(得分:1)
你可以使用ng-class
e.x。 :
<div ng-class={'green-bg':isValid, 'red-bg':!isValid}> </div>
green-bg
和red-bg
是css类,isValid是属性,你知道表达式isValid或没有
答案 2 :(得分:1)
CSS:
.invalid{
background-color:red;
}
.valid{
background-color:green;
}
<强> HTML 强>
<table border="1">
<tr ng-repeat="object in Cmd.items">
<td>{{object.objectName}}</td>
<td ng-class="object.objectStatus">{{object.objectStatus}}</td> //this background should be colored
</tr>
</table>
答案 3 :(得分:0)
可以在td标签或/和外部css中解决。
在Html中
<td ng-style="{'background': (object.objectStatus=='VALID') ? 'green' : 'red'}">
{{object.objectStatus}}
</td>
使用外部css您可以使用@oto lolua实现