我是使用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显示变量$ scope.response和服务器返回的JSON,但它没有在顶部的列表中显示任何内容。 JSON格式完美,但$ scope.cars变量似乎总是空的。
我做错了什么?
非常感谢,
GA
答案 0 :(得分:14)
$ http.get将为你解析json。你不需要自己解析它。
$scope.cars = data.allCars;
答案 1 :(得分:3)
只需解析您的数据
function (response,httpStatus) {
alert('response' + angular.toJson(response));
}
它是angularjs
的内置功能。</ p>