2016-03-24 9 views
0

のデータを更新した後、ビューページを再読み込みする方法。問題を解決する際に私を助けてください。私は、表示されたレコードのリストを持っていて、データベース内の選択したレコードを選択して更新するためのチェックボックスを持っているdisplay.htmlを持っています。レコードがデータベースで更新された後、私は、データベースに新しく更新されたレコードをDisplay.htmlをリフレッシュする必要が角度のデータベース

**Display.html:** 

    <div data-ng-controller="SKUIntegrationCtrl"> 

    <table class="table table-striped table-hover" width="100%" 
     style="overflow-x: scroll;"> 
     <tr> 
      <th><input type="checkbox" ng-model="selectedAll" 
       ng-click="checkAll()" /></th> 
      <th class="imagetableth"><b>UniqueID</b></th> 
      <th class="imagetableth"><b>Style</b></th> 
     </tr> 
     <tr 
      ng-repeat="datalist in datalists| pagination: curPage * pageSize | limitTo: pageSize"> 
      <td><input type="checkbox" ng-model="datalist.selected" 
       value="datalist.uniqueid"> </input></td> 
      <td class="val"><span class="glyphicon sort-icon">    {{datalist.uniqueid}} 
      </span></td> 
      <td class="val"><span class="glyphicon sort-icon">{{datalist.style}} 
      </span></td> 
     </tr> 
    </table> 
    <input type="button" name="Search" value="" 
     ng-disabled="authenticatedUser" ng-click="updateDataExtractionSAP()" 
     ng-class="enableDisableButton" /> 
     </div> 

**DisplayCtrl.js** 

    $scope.updateDataExtractionSAP = function (docName,ida3a11) { 
     SKUIntegrationService.updateDataExtractionSAP($scope, $http); 
     $route.reload(); 
     alert("Reload"); 
    }; 

**DisplayService.js** 

     this.updateDataExtractionSAP = function ($scope, $http) { 
     var SkuIntegrationSearchVo = {}; 

       $scope.uniqueIDArray = []; 
       angular.forEach($scope.datalists, function(datalist){ 
       if (!!datalist.selected){ 
        $scope.uniqueIDArray.push(datalist.uniqueid); 
       } 
       }) 

     SkuIntegrationSearchVo.uniqueIDList = $scope.uniqueIDArray; 
     var scopevalue = document.getElementById("contentlayout"); 
     var controllerScope = angular.element(scopevalue).scope(); 
     controllerScope.documentcriteriadata = SkuIntegrationSearchVo; 


     $scope.toggleloading(); 
     var promise = $http.post('/PMDBViewer/userlogin/LandingLayout/updateDataExtractionSAPList', SkuIntegrationSearchVo); 
     promise.success(function (data, status, headers, config) { 
      $scope.toggleloading(); 
      var scopevalue = document.getElementById("contentlayout"); 
      var controllerScope = angular.element(scopevalue).scope(); 
      controllerScope.datalists = data; 
      controllerScope.content = "SkuIntegrationSearchResult"; 
      $scope.showAdvPrdSearch = false; 
      $scope.showsearchresult = true; 
      alert("Selected records updated in DataExtractionToSAP table"); 
     }).error(function (data, status, headers, config) { 
      $scope.toggleloading(); 
      alert("error in advance Document Search"); 
     }); 
    }; 


Now i have an action method to update the records selected in check box in display.html to the database. It is working fine. Now i need to re-load the display.html with the newly update values in database. Please help me on this. i tried 

    $route.reload(); 

it seems not working 
+0

データリストを再度取得することはできませんか? – sdfacre

+0

コードスニペットで私を助けてください。 –

+0

はおそらく最初に完全なDisplayCtrl.jsを表示します – sdfacre

答えて

0

あなたは、データが別の関数内に表示されるようになっているあなたの関数呼び出しを追加することによってそれを行うことができます。コントローラのfunction getData(){...} function activate(){getData()}add activate()。したがって、最後に更新データを追加するたびに、activate関数を再度呼び出します。

関連する問題