Angularjs 在ng重复中只允许一个折叠div
我在ng repeat中有一些数据,在里面我在每个折叠的div下都有一些数据 否当我单击主div时,我只希望一次折叠一个div 例如:如果我单击abc,则应显示asdasd。。然后,如果单击abc1,则应显示asdasd1,但不是asdasdAngularjs 在ng重复中只允许一个折叠div,angularjs,bootstrap-4,Angularjs,Bootstrap 4,我在ng repeat中有一些数据,在里面我在每个折叠的div下都有一些数据 否当我单击主div时,我只希望一次折叠一个div 例如:如果我单击abc,则应显示asdasd。。然后,如果单击abc1,则应显示asdasd1,但不是asdasd <script> angular.module('myApp', []) .controller("Ctrl_List", ["$scope", function(s) { s.people = [ {name:"Sten", age:"
<script>
angular.module('myApp', [])
.controller("Ctrl_List", ["$scope", function(s) {
s.people = [
{name:"Sten", age:"49"}
,{name:"John", age:"39"}
,{name:"Hanne", age:"37"}
,{name:"Jens", age:"37"}
,{name:"Brian", age:"24"}
,{name:"Johnny", age:"24"}
,{name:"Peter", age:"49"}
]
s.obj = [
{
"name":'abc',
"text":'asdasd'
},
{
"name":'abc1',
"text":'asdasd1'
}
]
}])
angular.module('myApp',[])
.controller(“Ctrl_列表”[“$scope”,函数){
s、 人=[
{姓名:“Sten”,年龄:“49”}
,{姓名:“约翰”,年龄:“39”}
,{姓名:“汉恩”,年龄:“37”}
,{姓名:“Jens”,年龄:“37”}
,{姓名:“布赖恩”,年龄:“24”}
,{姓名:“约翰尼”,年龄:“24”}
,{姓名:“彼得”,年龄:“49”}
]
s、 obj=[
{
“名称”:“abc”,
“文本”:“asdasd”
},
{
“名称”:“abc1”,
“文本”:“asdasd1”
}
]
}])
html:
{{ob.name}
{{ob.text}}
数据父项不适用于我,或者可能是我没有正确使用它
请使用纯角度方法检查小提琴,而不是使用JQuery 向每个对象添加新属性
show
,并使用ng if
在控制器中使用方法显示/隐藏其相应的文本
<div ng-repeat="ob in obj">
<button class="btn" ng-click=" showThis(ob)"> {{ob.name}}</button>
<div ng-if="ob.show">{{ob.text}}</div>
</div>
使用纯角度方法,而不是使用JQuery 向每个对象添加新属性
show
,并使用ng if
在控制器中使用方法显示/隐藏其相应的文本
<div ng-repeat="ob in obj">
<button class="btn" ng-click=" showThis(ob)"> {{ob.name}}</button>
<div ng-if="ob.show">{{ob.text}}</div>
</div>
谢谢,这对我很有效,只是我没有得到动画。但是没关系。再次感谢!谢谢,它为我工作,只是我没有得到动画。但是没关系。再次感谢!
s.showThis = function(obj) {
//Hides all
angular.forEach(s.obj, function(ob) {
if(ob.name != obj.name) {
ob.show = false;
}
});
//Toggles current object show/hide
obj.show = !obj.show;
}