0

JSON文字列からドロップダウンリストをバインドしようとしていますが、JSONの最後の値がすべての値で上書きされています。コンソールにしようとしましたが、コンソールで個別の値を受け取りましたが、バインド中にはそれを行うことができませんでした。私はselectオプションと異なるselect ng-changeオプションを使用しましたが、依然としてスタックしています。できるだけ私を助けてください。anglejsのドロップダウンリストをJSON文字列配列からバインドする方法

マイHTMLコード:

<ion-list> 
     <div ng-repeat="group in groups"> 
      <ion-item class="item-stable" ng-click="toggleGroup(group)" ng-class="{active: isGroupShown(group)}"> 
       <i class="icon" ng-class="isGroupShown(group) ? 'ion-minus' : 'ion-plus'"></i> 
      &nbsp; 
      {{group.name}} 
      </ion-item> 
      <ion-item class="item-accordion item-button-right" ng-repeat="item in group.items track by $id(item)" ng-show="isGroupShown(group)" style="height: 50px;"> 
      {{item.name}} 
      <select> <option selected>Select</option> 
        <option ng-repeat="itm in qty track by qty.id" value="{{itm.id}}">{{itm.price}}</option> 
      </select> 
      </ion-item> </div> 
     </ion-list> 

JSON文字列:

"category_name":{ 
    "1":{ 
    "menu_category_id":"1", 
    "category_name":"Beverage Black Coffee", 
    "itemname":{ 
    "1":{ 
    "menu_item_id":"1", 
    "item_name":"Frespresso", 
    "qty":{ 
    "50.00":{ 
    "full":"50.00", 
    "half":null, 
    "quater":null 
    } 
    } 
}, 

コントローラコード:

  var i =0;  
      angular.forEach(response.data.category_name, function(menu,key){ 
      $scope.groups[i] = { 

      name: menu.category_name, 
      items: [], 
      qty:[], 
      rate:[], 
      show: false 

      }; 
      angular.forEach(menu.itemname, function(itemid,key){ 

      $scope.groups[i].items.push({id:itemid.menu_item_id,name:itemid.item_name}); 
      angular.forEach(itemid.qty, function(qty,key){ 


      if(qty.fullqty!==null){ 
       $scope.groups[i].qty.push({type:'full',qty:qty.full}); 
       console.log("full : "+itemid.full +" Item Id "+itemid.menu_item_id); 


       console.log(qty.item_name + " fullqty " + qty.full_qty + " fullrate "+ qtyu.full_rate); 
      } 

      }); 


      });   


      i++; 


      }); 

     } else{ 
      $ionicLoading.hide(); 
      msg = []; 
      msg.push("- Something went Wrong!!! <br />"); 
      msg.push("- Plz try again! <br />"); 
      var alertPopup = $ionicPopup.alert({ 
      title: 'OOPS!!!', 
      template: msg 
      }); 
     } 
     }).error(function(error) { 
      console.log("Server error: " + error); 
    }); 

}); 
+0

あなたのJSONとHTMLコードがあなたのJSONに見られる十分なng-repeatを持っていて、codepen以上のコードを提供できるとは思いませんか? – sioesi

+0

JSOnコードを送信するには、他に必要なことを教えてください。ここにcodepenのURLがあります:http://codepen.io/anandsaroj5/pen/YGLQmB?editors=0010 –

答えて

0

は、Iが同期して実行されている別のアレイを形成するために愚かであった、これを解決それが正しくバインドされていないため、$ scope.groups [i] .items.push({id:itemid.menu_item_id、name: itemid.item_name}); foreachをもう1つ作成する代わりに

関連する問題