我正在尝试在ajax方法中获取用户的名字,并尝试在html页面上打印它,但它没有被打印
这是我的HTML:
<div ng-app="app" ng-controller="VolController">
<div class="account-action">
<h3 style="display:inline;"><img class="img" align="left" src="images/u11.png">
<p style="color:white"> Welcome {{first_name}}<p></h3>
</div>
这是我的控制者:
app.controller('VolController',['$scope','$sessionStorage','$state',function($scope,$sessionStorage,$state){
var b=sessionStorage.getItem("userid");
var a="http://localhost:8080/volunteers/"+b;
$.ajax({
type:'GET',
url:a,
success:function(data){
console.log(JSON.stringify(data));
$scope.volunteer=data;
$scope.first_name=JSON.stringify($scope.volunteer.VolunteersDTO.first_name);
console.log(data);
},
error:function(data){
alert(data);
},
dataType:"json",
contentType:"application/json",
})
}]);
问题已更新!!!!
答案 0 :(得分:0)
你应该使用$ scope,
$scope.first_name=JSON.stringify($scope.volunteer.VolunteersDTO.first_name);
答案 1 :(得分:0)
当您使用$.ajax
而不是本地$http
时,您应该将分配包装到$apply
中:
success: function(data) {
$scope.$apply(function(){
$scope.volunteer = data;
$scope.first_name = JSON.stringify($scope.volunteer.VolunteersDTO.first_name);
});
}
答案 2 :(得分:0)
不要使用jquery $ .ajax进行ajax调用。请使用angularjs的$ http服务进行ajax调用。
$ http.get(URL);
不要忘记在angular中添加$ http服务作为依赖。