javascript
  • html
  • angularjs
  • directive
  • 2016-07-15 4 views 0 likes 
    0

    확장 가능한 목록 항목이있는 ng-repeat 코드가 있습니다. 한 번에 하나의 항목을 확장하고 싶습니다.Ng-repeat 및 지시문은 한 번에 하나의 목록 항목을 확장합니다.

    내가 할 노력하고 있어요 방법은 HTML 파일

    <div data-ng-repeat="parts in data track by $index"> 
        <li id="titleHelp" ng-click='setItem($index);"> 
    

    에서 하고 setItem 기능의 지시에 나는 이전에 확장 된 항목을 축소하고 새로운 하나를 확장합니다. 색인을 사용하여 지시문에서 하나의 반복 요소에 액세스 할 수 있습니까?

    감사합니다.

    답변

    1

    현재 목록 항목을 어떻게 확장합니까? 당신의 setItem 기능에서

    <div data-ng-repeat="parts in data track by $index"> 
        <li id="titleHelp" ng-click='setItem($index);"> 
        <div ng-show="$index = selected_item"> <!-- contents --></div> 
    

    할 항목을 클릭하고 반복 목록에 나는 즉시 변수를 설정 어떻게 할 것인지 :

    $scope.setItem = function(i) { 
        $scope.selected_item = i; 
    } 
    
    1

    는 객체를 선언

    $scope.obj={selected:null}; 
    

    그 후 반복에서 메소드를 추가하십시오.

    $scope.isHide = function (id) { 
    
              if (id == $scope.obj.selected) 
               return $scope.obj.selected = "all"; 
    
              return $scope.obj.selected = id; 
             } 
    

    div를 숨기려면 id를 사용하여이 메소드를 호출하십시오. 당신이 필요하면 리에 대해서도 같은 일을하십시오.

    관련 문제