Angularjs 如何使用ng if显示表格行

Angularjs 如何使用ng if显示表格行,angularjs,Angularjs,我有一个嵌套数组来显示表数据,这里我编写了一个条件来显示tr。如果ng if=“detail.college!='ddd'”此条件不满足,则不应显示tr。但是表行显示不正确。我做错了什么 var-app=angular.module('myApp',[]) app.controller('myController',函数($scope){ $scope.init=函数(){ $scope.data=[ [ { “姓名”:“约翰”, ‘学院’:‘aaa’, ‘部门’:‘aaa’, 年龄:20岁

我有一个嵌套数组来显示表数据,这里我编写了一个条件来显示
tr
。如果
ng if=“detail.college!='ddd'”
此条件不满足,则不应显示
tr

但是表行显示不正确。我做错了什么

var-app=angular.module('myApp',[])
app.controller('myController',函数($scope){
$scope.init=函数(){
$scope.data=[
[
{
“姓名”:“约翰”,
‘学院’:‘aaa’,
‘部门’:‘aaa’,
年龄:20岁
},
{
'name':'jss',
“学院”:“bbb”,
‘部门’:‘bbb’,
年龄:22
}
],
[
{
“姓名”:“杰克”,
“学院”:“ccc”,
“部门”:“ccc”,
年龄:25岁
},
{
“名称”:“bfff”,
“学院”:“ddd”,
“部门”:“ddd”,
年龄:18岁
}
]    
];
}
})

{{list[0].name}
{{离开大学}
{{离开部门}
{{leave.age}

您的数据结构不正确。我修改了它。请看,我把错的东西拿走了

控制器:

$scope.data =[
   [
    {
    'name':'john',
    'college':'aaa',
    'department':'aaa',
    'age':20
    },
    {
    'name':'jss',
    'college':'bbb',
    'department':'bbb',
    'age':22
    }
  ],
  [
    {
    'name':'jack',
    'college':'ccc',
    'department':'ccc',
    'age':25
    },
    {
    'name':'bfff',
    'college':'ddd',
    'department':'ddd',
    'age':18
    }
 ]    
];
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div ng-app="myApp" ng-controller="myController" ng-init="init()">
  <table ng-repeat="list in data">
  <thead>
     <tr ng-repeat="detail in list" ng-if="detail.college!='ddd'">
        <th>{{detail.name}}</th>
      </tr>
  </thead>
  <tbody>
  <tr ng-repeat="detail in list" ng-if="detail.college!='ddd'">
      <td width="14%">{{leave.college}}</td>
      <td width="20%">{{leave.department}}</td>
      <td>{{leave.age}}</td>
    </tr>
  </tbody>
  </table>
</div>
HTML:

$scope.data =[
   [
    {
    'name':'john',
    'college':'aaa',
    'department':'aaa',
    'age':20
    },
    {
    'name':'jss',
    'college':'bbb',
    'department':'bbb',
    'age':22
    }
  ],
  [
    {
    'name':'jack',
    'college':'ccc',
    'department':'ccc',
    'age':25
    },
    {
    'name':'bfff',
    'college':'ddd',
    'department':'ddd',
    'age':18
    }
 ]    
];
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div ng-app="myApp" ng-controller="myController" ng-init="init()">
  <table ng-repeat="list in data">
  <thead>
     <tr ng-repeat="detail in list" ng-if="detail.college!='ddd'">
        <th>{{detail.name}}</th>
      </tr>
  </thead>
  <tbody>
  <tr ng-repeat="detail in list" ng-if="detail.college!='ddd'">
      <td width="14%">{{leave.college}}</td>
      <td width="20%">{{leave.department}}</td>
      <td>{{leave.age}}</td>
    </tr>
  </tbody>
  </table>
</div>

{{detail.name}
{{离开大学}
{{离开部门}
{{leave.age}

您的数据结构不正确。我修改了它。请看,我把错的东西拿走了

控制器:

$scope.data =[
   [
    {
    'name':'john',
    'college':'aaa',
    'department':'aaa',
    'age':20
    },
    {
    'name':'jss',
    'college':'bbb',
    'department':'bbb',
    'age':22
    }
  ],
  [
    {
    'name':'jack',
    'college':'ccc',
    'department':'ccc',
    'age':25
    },
    {
    'name':'bfff',
    'college':'ddd',
    'department':'ddd',
    'age':18
    }
 ]    
];
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div ng-app="myApp" ng-controller="myController" ng-init="init()">
  <table ng-repeat="list in data">
  <thead>
     <tr ng-repeat="detail in list" ng-if="detail.college!='ddd'">
        <th>{{detail.name}}</th>
      </tr>
  </thead>
  <tbody>
  <tr ng-repeat="detail in list" ng-if="detail.college!='ddd'">
      <td width="14%">{{leave.college}}</td>
      <td width="20%">{{leave.department}}</td>
      <td>{{leave.age}}</td>
    </tr>
  </tbody>
  </table>
</div>
HTML:

$scope.data =[
   [
    {
    'name':'john',
    'college':'aaa',
    'department':'aaa',
    'age':20
    },
    {
    'name':'jss',
    'college':'bbb',
    'department':'bbb',
    'age':22
    }
  ],
  [
    {
    'name':'jack',
    'college':'ccc',
    'department':'ccc',
    'age':25
    },
    {
    'name':'bfff',
    'college':'ddd',
    'department':'ddd',
    'age':18
    }
 ]    
];
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div ng-app="myApp" ng-controller="myController" ng-init="init()">
  <table ng-repeat="list in data">
  <thead>
     <tr ng-repeat="detail in list" ng-if="detail.college!='ddd'">
        <th>{{detail.name}}</th>
      </tr>
  </thead>
  <tbody>
  <tr ng-repeat="detail in list" ng-if="detail.college!='ddd'">
      <td width="14%">{{leave.college}}</td>
      <td width="20%">{{leave.department}}</td>
      <td>{{leave.age}}</td>
    </tr>
  </tbody>
  </table>
</div>

{{detail.name}
{{离开大学}
{{离开部门}
{{leave.age}

在挖掘之后,我遇到了一个奇怪的问题,ng repeat在tr上无法正常工作,因此我做了一些更改

  • 第一次ng重复使用div而不是表格
  • 重新构造了json,因为它无效
  • 删除了init函数,因为我们可以直接访问数据
  • var-app=angular.module('myApp',[]);
    app.controller('myController',函数($scope){
    $scope.data=[
    [
    {
    “姓名”:“约翰”,
    “学院”:“aaa”,
    “部门”:“aaa”,
    “年龄”:20岁
    },
    {
    “名称”:“jss”,
    “学院”:“bbb”,
    “部门”:“bbb”,
    “年龄”:22
    }
    ],
    [
    {
    “姓名”:“杰克”,
    “学院”:“ccc”,
    “部门”:“ccc”,
    “年龄”:25岁
    },
    {
    “名称”:“bfff”,
    “学院”:“ddd”,
    “部门”:“ddd”,
    “年龄”:18岁
    }
    ]
    ];
    });
    
    
    {{list[0].name}
    {{detail.college}
    {{detail.department}
    {{detail.age}
    
    在挖掘之后,我遇到了一个奇怪的问题,ng repeat在tr上无法正常工作,因此我做了一些更改

  • 第一次ng重复使用div而不是表格
  • 重新构造了json,因为它无效
  • 删除了init函数,因为我们可以直接访问数据
  • var-app=angular.module('myApp',[]);
    app.controller('myController',函数($scope){
    $scope.data=[
    [
    {
    “姓名”:“约翰”,
    “学院”:“aaa”,
    “部门”:“aaa”,
    “年龄”:20岁
    },
    {
    “名称”:“jss”,
    “学院”:“bbb”,
    “部门”:“bbb”,
    “年龄”:22
    }
    ],
    [
    {
    “姓名”:“杰克”,
    “学院”:“ccc”,
    “部门”:“ccc”,
    “年龄”:25岁
    },
    {
    “名称”:“bfff”,
    “学院”:“ddd”,
    “部门”:“ddd”,
    “年龄”:18岁
    }
    ]
    ];
    });
    
    
    {{list[0].name}
    {{detail.college}
    {{detail.department}
    {{detail.age}
    
    显示的数据结构无效。除此之外,“条件未返回正确的表数据”是什么意思?显示的数据结构无效。除此之外,“条件未返回正确的表数据”是什么意思?谢谢。如果条件正确,我的
    ng是否正确?您能检查一下吗?好的,在这种情况下您想要什么。我没有从这个问题中正确地理解它。你能在这里解释一下吗?是的。不应该在表中显示包含
    college==ddd
    的行。我已经更新了我的答案,你的HTML代码中也有一些问题。谢谢。Surjeet再一次怀疑我如何在这里使用
    toString()
    。这意味着
    ng if=“detail.college!='ddd'”
    这个条件应该同时满足大写和小写。谢谢。我的
    ng if
    条件正确吗?你能检查一下吗?好的,在那个条件下你想要什么。我没有从这个问题中正确地理解它。你能在这里解释一下吗?是的。不应该在表中显示包含
    college==ddd
    的行。我已经更新了我的答案,你的HTML代码中也有一些问题。谢谢。Surjeet再一次怀疑我如何在这里使用
    toString()
    。这意味着
    ng if=“detail.college!='ddd'”
    这个条件对于大写和小写都应该满足。