0

ng-clickの後にテーブルのデータを更新するのに問題があります。私がコンボボックス(ドロップダウン)上の項目を選択すると、表の内容は更新されません。ここに私のコンボボックスには、次のとおりです。angularjsのテーブルの内容を更新する

<!-- Combobox -->    
     <div class="row"> 
     <div class="dropdown" ng-controller="StabPageCtrl"> 
      <button class="btn btn-default dropdown-toggle" type="button" id="dropdown_stabs" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"> 
       Estabelecimentos 
       <span class="caret"></span> 
      </button> 
      <ul class="dropdown-menu" aria-labelledby="dropdown_stabs" > 
       <li> 
        <a ng-repeat="estab in stablishmentList" ng-click="passdata(stab.stabId)"> 
         {{estab.nomeEstab}} 
        </a> 
       </li> 
      </ul> 
     </div> 
     </div> 

ngのリピートを持つ表:

<table class="table table-hover" ng-controller="StabPageCtrl"> 
        <thead> 
        <tr> 
         <th>Serviço</th> 
         <th>Descrição Serviço</th> 
         <th>Valor/Valor hora</th> 
         <th>Status</th> 
        </tr> 
        </thead> 
        <tbody ng-repeat="servico in listaDeServicos"> 
        <tr> 
         <td>{{servico.nomeServico}}</td> 
         <td>{{servico.descServico}}</td> 
         <td>Valor: R${{servico.precoServico}} - Valor/Hora: R${{servico.precoHoraServico}}</td> 
         <td>VER FLAG DEPOIS</td> 
         <li ng-hide="listaDeServicos.length > 0">Lista vazia.</li> 
        </tr> 
        </tbody> 
       </table> 

コントローラー:

angular.module('yapp').controller('StabPageCtrl', function($scope, $state, ListServicoService, ListStabService) { 

/** 
* Controller do dropdown que escolhe o estabelecimento 
*/ 
    $scope.passdata = function(id){ 
    console.log("ctrl: " + id); 

    ListServicoService.listarServicos(id).then(function(dados){ 
     $scope.listaDeServicos = dados; 

     console.log($scope.listaDeServicos); 
    }); 
    } 

/** 
* Controller que lista os estabelecimentos 
*/ 
ListStabService.listAllStabs.then(function(estabs){ 
    $scope.stablishmentList = estabs; 
}); }); 

サービス

angular.module('yapp') 
.service('ListServicoService', function($http){ 
    return{ 
    listarServicos : function (id){ 
     console.log("serv: " + id); 
     return $http.get('http://localhost:3854/listarServicosByEstab/' + id).then(function(response){ 
      return response.data; 
     }); 
    } 
}}); 
+0

なぜあなたは '二回開始' NG-コントローラ=「StabPageCtrl」を持っていますテーブルとコンボボックスのdiv? – Weijian

答えて

0
 

    ng-repeat="servico in listaDeServicos track by $index" 

あなたは重複していますか?尝试一下上面办法、增加$インデックス

によってトラック(英語:?あなたのデータが重複した値で返される追加するには、上記の方法を試してみてください)

関連する問題