Ngスタイルを使用して、値に基づいてテーブル内のデータ要素の色を条件付きで設定しようとしています。 ng repeatを使用して、データの各行が生成されています。
だから私は次のようなものを持っています:
<tr ng-repeat="payment in payments">
<td ng-style="set_color({{payment}})">{{payment.number}}</td>
そして、次のようなことをする私のコントローラーの機能:
$scope.set_color = function (payment) {
if (payment.number > 50) {
return '{color: red}'
}
}
私はいくつかの異なることを試しました。さらに、支払いオブジェクトのデータ属性として色を設定しますが、データバインディングからデータを処理するためにngスタイルを取得することはできないようです。ありがとう。
このコードを使用
<td style="color:{{payment.number>50?'red':'blue'}}">{{payment.number}}</td>
または
<td ng-style="{'color':(payment.number>50?'red':'blue')}">{{payment.number}}</td>
たとえば青い色
それはあなたを助けるかもしれません!
<!DOCTYPE html>
<html>
<head>
<style>
.yelloColor {
background-color: gray;
}
.meterColor {
background-color: green;
}
</style>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script>
<script>
var app = angular.module('ngStyleApp', []);
app.controller('ngStyleCtrl', function($scope) {
$scope.bar = "48%";
});
</script>
</head>
<body ng-app="ngStyleApp" ng-controller="ngStyleCtrl">
<div class="yelloColor">
<div class="meterColor" ng-style="{'width':bar}">
<h4> {{bar}} DATA USED OF 100%</h4>
</div>
</div>
</body>
</html>