我是使用AngularJS的新手,但在解析json响应时遇到问题。这是我正在使用的HTML代码:
<!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使用服务器返回的JSON显示变量$ scope.response,但顶部列表中未显示任何内容。JSON的格式完美,但是$ scope.cars变量似乎始终为空。
我究竟做错了什么?
非常感谢,
GA
$ http.get将为您解析json。您不需要自己解析它。
$scope.cars = data.allCars;