Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.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
Javascript 如何传递不同的id';s,同时使用ng重复执行ng单击功能_Javascript_Angularjs_Angularjs Ng Repeat_Angularjs Ng Click - Fatal编程技术网

Javascript 如何传递不同的id';s,同时使用ng重复执行ng单击功能

Javascript 如何传递不同的id';s,同时使用ng重复执行ng单击功能,javascript,angularjs,angularjs-ng-repeat,angularjs-ng-click,Javascript,Angularjs,Angularjs Ng Repeat,Angularjs Ng Click,这是我的HTML代码。在这里,我从ng repeat中获取多个值,对于每个值,我希望相应的按钮显示和隐藏两个div元素。在我的网页中,来自不同成员块的按钮只显示/隐藏第一个成员块。。。id=round的按钮应该切换id=first和id=second的btw div元素,用于我通过ng repeat获得的所有成员 <section id="team"> <div ng-controller="teamController as tctrl"> <div

这是我的HTML代码。在这里,我从ng repeat中获取多个值,对于每个值,我希望相应的按钮显示和隐藏两个div元素。在我的网页中,来自不同成员块的按钮只显示/隐藏第一个成员块。。。id=round的按钮应该切换id=first和id=second的btw div元素,用于我通过ng repeat获得的所有成员

 <section id="team">
  <div ng-controller="teamController as tctrl">
   <div class="container">
    <div class="row">
     <div class="col-md-3 bord" ng-repeat="member in tctrl.members">
      <button id="round" ng-click="showHide($index)">
        <img id="direction" src="img/icon/uparrow.png">
      </button>
      <img ng-src="{{member.image}}">
      <div id="first" class="memberabout" >
        <h3 ng-bind="member.title"></h3>
        <h2 ng-bind="member.name"></h2>     
      </div>            
      <div id="second" class="hid" >
        <p ng-bind="member.about"></p>
      </div>
     </div>
    </div>
   </div>
  </div>
 </section>

如何传递id,以便每个按钮都能显示/隐藏其块中的div元素?

Angularjs在应用程序中使用
jQuery
可以取消许多选项;像
建模
指令
等选项

在您的情况下,您不需要使用id,因为当我们使用
ng repeat
时,事实上所有项目都是唯一的,所以我们只需使用它们来显示/隐藏
ng repeat
中的
对象

我希望此示例可以帮助您了解如何使用它:

var-app=angular.module(“app”,[]);
应用程序控制器(“ctrl”,函数($scope){
var main=这个;
main.members=[{
图像:“https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcR4f5PCRqcMgg_KHymC29ABsy-PDFI08MB6QHQMVIQBDDHJJJJYM9G“,
标题:“A”,
姓名:“杰克”,
关于:“你好,世界”
},
{
图像:“https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQAxySZHmSrUU1_iIFJHGdDTdmTCAE610QnPwptWGWbMRAbSUzgNA",
标题:“B”,
姓名:“菲利普”,
关于:“你好,世界2”
}
];
});

如果要使用它,这是唯一的id:id{{{$index}
显示/隐藏


您能否清楚地键入问题,以便我提供帮助?没有正确理解您的问题我应该解释哪一部分?这一部分令人困惑>,但由于我使用的是id,所有的按钮都只显示/隐藏第一个元素。您可以执行类似的操作,而不是执行
id=“first”
,例如
id=“member-{index}}”
,这样每个元素在重复运行后都会得到一个唯一的ID。好的,我会试试这个。不客气,请给其他用户的答案打分,谢谢。是否可以用此代码将另一个函数传递给ng click?是的,用
分隔,但尝试只创建一个主函数OK。谢谢。
$scope.showHide = function(index) {
    if (document.getElementById('first') !== undefined) {
     if (document.getElementById('first').style.display == 'none') {
        document.getElementById('first').style.display = 'block';
        document.getElementById('second').style.display = 'none';
        var down = document.getElementById('round');
        down.style.top = "201px";
        var direction = document.getElementById('direction');
        direction.src = 'img/icon/uparrow.png';
      } else {
        document.getElementById('first').style.display = 'none';
        document.getElementById('second').style.display = 'block';
        var down = document.getElementById('round');
        down.style.top = "71px";
        var direction = document.getElementById('direction');
        direction.src = 'img/icon/arrowdown.png';
      }
     }
   };