2014-04-22 26 views
0

我有2級範圍的變量如下所示:與範圍內的變量的角循環在同一個控制器

$scope.degrees =[{DegreeCategoryID:"1",DegreeCategory:"Accounting",DegreeCategoryType:"Applied Sciences"}, 
       {DegreeCategoryID:"2",DegreeCategory:"Advanced Manufacturing/Mechatronics Technology",DegreeCategoryType:"Applied Sciences"}, 
       {DegreeCategoryID:"3",DegreeCategory:"Air Conditioning and Refrigeration Technology",DegreeCategoryType:"Applied Sciences"}, 
       {DegreeCategoryID:"4",DegreeCategory:"Auto Body Technology",DegreeCategoryType:"Applied Sciences"}, 
       {DegreeCategoryID:"78",DegreeCategory:"Associate in Sciences",DegreeCategoryType:"Academic"}, 
       {DegreeCategoryID:"79",DegreeCategory:"Associate of Arts in Teaching",DegreeCategoryType:"Academic"}, 
       {DegreeCategoryID:"80",DegreeCategory:"Emphasis",DegreeCategoryType:"Academic"}, 
       {DegreeCategoryID:"81",DegreeCategory:"Field of Study",DegreeCategoryType:"Academic"}]; 

$scope.degreecategories=[{DegreeID:"1",DegreeCategoryID:"1",Degree:"Accounting AAS ",DegreeTypeID:"2",BHC:"1",CVC:"1",EFC:"1",ECC:"1",MVC:"1",NLC:"1",RLC:"1",Description:""}, 
      {DegreeID:"2",DegreeCategoryID:"1",Degree:"Accounting Assistant Certificate ",DegreeTypeID:"1",BHC:"1",CVC:"1",EFC:"1",ECC:"1",MVC:"1",NLC:"1",RLC:"1",Description:""}, 
      {DegreeID:"3",DegreeCategoryID:"1",Degree:"Accounting Clerk Certificate ",DegreeTypeID:"1",BHC:"1",CVC:"1",EFC:"1",ECC:"1",MVC:"1",NLC:"1",RLC:"1",Description:""}, 
      {DegreeID:"4",DegreeCategoryID:"1",Degree:"Advanced Technical Certificate in Professional Accountancy",DegreeTypeID:"1",BHC:"",CVC:"",EFC:"",ECC:"",MVC:"1",NLC:"",RLC:"",Description:""}, 
      {DegreeID:"5",DegreeCategoryID:"2",Degree:"Advanced Manufacturing/Mechatronics Technology AAS ",DegreeTypeID:"2",BHC:"",CVC:"",EFC:"1",ECC:"",MVC:"",NLC:"",RLC:"",Description:""}, 
      {DegreeID:"6",DegreeCategoryID:"2",Degree:"Advanced Manufacturing/Mechatronics Technology Certificate ",DegreeTypeID:"1",BHC:"",CVC:"",EFC:"1",ECC:"",MVC:"1",NLC:"",RLC:"",Description:""}, 
      {DegreeID:"7",DegreeCategoryID:"3",Degree:"Air Conditioning and Refrigeration Technology AAS ",DegreeTypeID:"2",BHC:"",CVC:"",EFC:"1",ECC:"",MVC:"",NLC:"",RLC:"",Description:""}, 
      {DegreeID:"8",DegreeCategoryID:"3",Degree:"Profit Center Manager Enhanced Skills Certificate ",DegreeTypeID:"1",BHC:"",CVC:"",EFC:"1",ECC:"",MVC:"",NLC:"",RLC:"",Description:""}, 
      {DegreeID:"9",DegreeCategoryID:"3",Degree:"Residential - Technician I Certificate ",DegreeTypeID:"1",BHC:"",CVC:"1",EFC:"1",ECC:"",MVC:"",NLC:"",RLC:"",Description:""}, 
      {DegreeID:"10",DegreeCategoryID:"3",Degree:"Residential - Technician III Level II Certificate ",DegreeTypeID:"1",BHC:"",CVC:"1",EFC:"1",ECC:"",MVC:"",NLC:"",RLC:"",Description:""}, 
      {DegreeID:"11",DegreeCategoryID:"3",Degree:"Residential AAS ",DegreeTypeID:"2",BHC:"",CVC:"1",EFC:"1",ECC:"",MVC:"",NLC:"",RLC:"",Description:""}, 
      {DegreeID:"12",DegreeCategoryID:"4",Degree:"Auto Body Metal Technician Certificate ",DegreeTypeID:"1",BHC:"",CVC:"",EFC:"1",ECC:"",MVC:"",NLC:"",RLC:"",Description:""}]; 

我的兩個以上的變量是存在於相同的控制器。我試圖以這樣的方式顯示數據,當我點擊一個名爲'Academic'的按鈕時,它使用過濾器顯示來自$scope.degrees的所有變量DegreeCategoryType:"Academic"基於我在列表中做出的選擇,在先前列表之後的另一個列表,即。當我點擊上面列表中的一個選項時,我想要顯示我的$scope.degreecategories中的詳細信息,以便它匹配並基於DegreeCategoryID進行過濾。我如何處理這個問題?我已經發布了這個問題,但我試圖傳達的信息是不正確的。

+0

你試過在一個NG使過濾器 - 重複第二個列表,它在哪裏過濾你放在範圍內的東西? – thsorens

+0

這裏是我嘗試的掠奪者。有沒有更好的方法呢? http://plnkr.co/edit/YLTN0rt9OQMe4E11EkU8?p=preview – Abhishek

回答

1

MARKUP Masterlist

 <div ng-show="display.academic" class="col-lg-4 col-md-4 col-sm-4"> 
      <div class="panel panel-info list-group list-unstyled" data-spy="scroll" data-target="#panelcategory" data-offset="0" style="max-height:300px;overflow:auto;position:relative;"> 
       <div class="panel-heading"> 
        <h3 class="panel-title">Academic</h3> 
       </div> 
        <a href='#' ng-repeat="degree in degrees | filter:{DegreeCategoryType:'Academic'}" class="list-group-item"> 
         <li ng-click="showAcademic(degree)" >{{degree.DegreeCategory}}</li> 
        </a> 
      </div> 
     </div> 

標記子列表

 <div ng-show="display.academiccourse" class="col-lg-9 col-md-9 col-sm-9"> 
      <div class="panel panel-info list-group list-unstyled" data-spy="scroll" data-target="#panelcategory" data-offset="0" style="max-height:300px;overflow:auto;position:relative;"> 
       <div class="panel-heading"> 
        <h3 class="panel-title">{{DegreeCategory}}</h3> 
       </div> 
        <a href='#' ng-repeat="degree in degreecategories | filter:{DegreeCategoryID:filterSub}" class="list-group-item"> 
         <li ng-click="display.appliedsciencescourse" >{{degree.Degree}}</li> 
        </a> 
      </div> 
     </div> 

JS

$scope.showAcademic = function(degree){ 
    $scope.DegreeCategory = degree.DegreeCategory; 
    $scope.filterSub = degree.DegreeCategoryID; 
    $scope.display.academiccourse = true; 
}; 
1
 <a href='#' ng-repeat="degree in degrees | filter:{DegreeCategoryType:'Applied Sciences'}" class="list-group-item"> 
         <li ng-click="display.appliedsciencescourse" >{{degree.DegreeCategory}}</li> 
        </a> 

我看不出你的ng-click實際上做了什麼。如果你的ng-click調用一個函數,應用單擊的元素作爲參數,那麼你可以在你的第二個列表中設置$ scope.selectedCategory = yourcategory,你可以按照selectedCategory進行過濾,這將存在於作用域中。

+0

我不知道我是否得到你。你可以幫助我處理重傷嗎? – Abhishek

+0

增加了另一個答案,我得到它在蹲下工作,但無法實際改變它,所以我把它粘貼在這裏。 – thsorens

+0

那真是太棒了謝謝 – Abhishek