Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果列名称为双时间,如何使用AngularJs筛选表数据?_Angularjs_Angularjs Filter - Fatal编程技术网

如果列名称为双时间,如何使用AngularJs筛选表数据?

如果列名称为双时间,如何使用AngularJs筛选表数据?,angularjs,angularjs-filter,Angularjs,Angularjs Filter,我使用AngularJs,代码如下: <tr ng-repeat=" a in table> <td>{{a.ClientID}}</td> <td>{{a.SiteName}}</td> <td>{{a.Group}}</td> </tr> 当AlarmGroup=Group和SiteName多次给出以下结果时,我想创建一个过滤器: ClientID SiteName Gr

我使用AngularJs,代码如下:

<tr ng-repeat=" a in table>
  <td>{{a.ClientID}}</td>
  <td>{{a.SiteName}}</td>
  <td>{{a.Group}}</td>
</tr>
当AlarmGroup=Group和SiteName多次给出以下结果时,我想创建一个过滤器:

ClientID    SiteName    Group
=========  ==========  =======
    1 (+)   Ikaria      Group
    3       Limnos      Null
    4       Pythion     Group
当我单击ClientID(+)时,我希望看到ClientID=2的行

你知道吗?
谢谢

您可以使用自定义的唯一筛选器轻松地查看

这是工作代码


(功能(){
var-app=angular.module(“testApp”['ui.bootstrap']);
app.controller('testCtrl',['$scope','$http',函数($scope,$http){
$scope.showDupes=功能(站点){
如果($scope.siteName==site){
$scope.siteName=未定义;
}
否则{
$scope.siteName=站点;
}
};
$scope.filter='SiteName';
$scope.getCount=函数(i){
var iCount=iCount | | 0;
对于(var j=0;j<$scope.tableData.length;j++){
if($scope.tableData[j].SiteName==i){
iCount++;
}
}
返回i计数;
}
$scope.tableData=[{“ClientID”:1,“SiteName”:“Ikaria”,“Group”:“Group”},{“ClientID”:2,“SiteName”:“Ikaria”,“Group”:“Group”},{“ClientID”:3,“SiteName”:“Limnos”,“Group”:“Null”},{“ClientID”:4,“SiteName”:“Limnos”,“Group”:“Null”},{“ClientID”:5,“SiteName”:“Limnos”,“Group”:“Null”},{“ClientID”:6,“SiteName”:“Limnos”,“Group”:“Null”},{“ClientID”:7,“SiteName”:“Limnos”,“Group”:“Null”},{“ClientID”:8,“SiteName”:“Pythion”,“Group”:“Group”}];
}]);
app.filter('unique',function(){
返回函数(项目、过滤器、复制){
if(filterOn==false){
退货项目;
}
如果((filterOn | | angular.isUndefined(filterOn))&angular.isArray(项目)){
var hashCheck={},
新项目=[];
var extractValueToCompare=函数(项){
if(角度等高线(项目)和角度等高线(过滤器)){
返回项目[过滤器];
}否则{
退货项目;
}
};
角度。forEach(项目、功能(项目){
var值检查,isDuplicate=false;
对于(var i=0;i
angular.module('app',[]).controller('ctrl',function($scope){
$scope.data=[
{ClientID:1,SiteName:'Ikaria',Group:'Group'},
{ClientID:2,SiteName:'Ikaria',Group:'Group'},
{ClientID:3,SiteName:'Ikaria',Group:'Group'},
{ClientID:4,SiteName:'Limnos',Group:'Null'},
{ClientID:5,SiteName:'Pythion',Group:'Group'},
{ClientID:6,SiteName:'Pythion',Group:'Group'},
{ClientID:7,SiteName:'Test',Group:'Null'}
];  
})
表,th,td{
边框:1px纯黑;
边界塌陷:塌陷;
}

客户
站点名称
团体
{{item.ClientID}
{{item.SiteName}
{{item.Group}

是的,但是你保留了哪一个<代码> clitd<代码>?1还是2?我想从列clitDel.clitDe= 1保存Min值。当我用CeleNID= 1点击行时,我想打开另一行,用CeltNID= 2,你不能为你的新情况添加一个过滤器,所以考虑手动(痛苦地)做它。。你应该收集副本,然后找到你点击哪个网站名来显示收集的副本。这是我得到的一个简单的演示:。它可以工作,所以如果你想让它更好/不同,那么祝你好运更改它谢谢你!!很好:-)非常好的代码。非常感谢!!我编辑了我的问题,你能再次帮助我吗?@devRena您无法显示隐藏的重复项,因为在阵列上应用了筛选器。您需要不同的功能(可能是指令)来显示them@devRena:更新代码以符合更新问题的要求
ClientID    SiteName    Group
=========  ==========  =======
    1 (+)   Ikaria      Group
    3       Limnos      Null
    4       Pythion     Group