5

我是新的使用AngularJS,我有問題解析JSON響應。這是我使用的HTML代碼:使用AngularJS解析JSON響應的問題

<!DOCTYPE html> 
<html ng-app> 
<head> 
    <script src="@routes.Assets.at("javascripts/angular.min.js")" type="text/javascript"</script> 
    <script src="@routes.Assets.at("javascripts/carLibrary.js")" type="text/javascript"></script> 
</head> 
<body> 

<div ng-controller="CarCtrl"> 
    <ul> 
     <li ng-repeat="car in cars"> 
      {{car.name}} 
      <p>{{car.speed}}</p> 
     </li> 
    </ul> 
    <hr> 
    <p>{{response}}</p> 
</div> 
</body> 
</html> 

這是使用AngularJS的Javascript代碼:

function CarCtrl($scope, $http) { 

    $scope.getAllCars = function() { 
     $scope.url = 'getAllCars'; 

     $http.get($scope.url).success(function (data, status) { 
      $scope.response = data; 
      var carsFromServer = JSON.parse(data); 
      $scope.cars = carsFromServer.allCars; 
     }).error(function (data, status) { 
       $scope.response = 'Request failed'; 
      }); 
    } 

    $scope.getAllCars(); 
} 

的HTML是顯示變量$ scope.response與JSON由服務器返回,但它沒有在頂部列表中顯示任何內容。 JSON格式完美,但$ scope.cars變量似乎總是空的。

我在做什麼錯?

非常感謝,

GA

+0

你能舉一個你得到的JSON的例子嗎? – mael

回答

13

$ http.get將解析JSON你。你不需要自己解析它。

$scope.cars = data.allCars; 
+0

天才!謝謝! –

3

只是分析你的數據一樣,

function (response,httpStatus) {  
       alert('response' + angular.toJson(response));     
     } 

它內置在angularjs功能。