我正在尝试显示行及其列值的总和。它有三种状态可以控制。
1)自动 2)住 3)autolive(不存在于json中,需要自动和实时组合行)
结论:
在siteData.jobType == toggleValue if(toggleValue == auto),它显示“auto”的记录
在siteData.jobType == toggleValue(toggleValue == live)上,它显示“live”的记录
但是在siteData.jobType == toggleValue(toggleValue == autolive)上,它没有显示记录,json中不存在coz autolive
如何实现它以显示自动和实时的组合记录?
//自定义切换按钮https://github.com/tannerlinsley/nz-toggle
<nz-toggle
tri-toggle
on-toggle="myFunction()"
ng-model="toggleValue"
val-true="'auto'"
val-false="'live'"
val-null="'autolive'">
</nz-toggle>
<table class="table table-condensed" border ="1" >
<thead>
<tr>
<th>PiteId</th>
<th>PiteId</th>
<th>Type</th>
<th>Date</th>
<th >Success</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="siteData in siteObject" ng-show="siteData.jobType==toggleValue" >
<td>{{siteData.sid}}</td>
<td>{{siteData.PiteId}}</td>
<td>{{siteData.Type}}</td>
<td>{{siteData.Date}}</td>
<td ng-init="siteObject.total.siteData.countSuccess = siteObject.total.siteData.countSuccess + siteData.countSuccess">{{siteData.countSuccess}}</td>
</tr>
</table>
json格式
siteObject =
{
"data": [
{
"sid": 1,
"PiteId": "1~10-4-2017~15:13:40",
"Type": "live",
"Date": "2017-04-14T18:30:00.000Z",
"countSuccess": 1
},
{
"sid": 1,
"PiteId": "1~10-4-2017~15:13:40",
"Type": "auto",
"Date": "2017-04-14T18:30:00.000Z",
"countSuccess": 1
}
]
}
当我切换autolive时,我想要所有这些
答案 0 :(得分:1)
尝试此解决方法:ng-show="toggleValue.indexOf(siteData.jobType) > -1"
答案 1 :(得分:1)
你需要创建一个这样的自定义过滤器函数:(可以命名为)
<tr ng-repeat="siteData in siteObject.data | filter: customFilter">
而且,在您的控制器中,您可以为此实现一些自定义逻辑。像这样:
$scope.customFilter = function(obj) {
if($scope.toggleValue !== 'autolive') {
return obj.Type === $scope.toggleValue
}
return true;
}
应该这样做!