0
这是我迄今为止很奇怪的问题。 我正在使用jaxon骨干来完成这个Angularjs项目。AngularJS与泽西JSON资源中未定义在javascript中
Java资源文件
@GET @Path("{query}") @Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML }) public Signature findByName(@PathParam("query") String query) { return dao.findById(query); }
control.js文件
function SearchCtrl($rootScope,$scope,Signature) { // console.log('SearchCtrl is invoked!!!!!!'); $scope.signature; $scope.searcherrormsg=''; $scope.searchaction = function(barcodenum,signature) { signature = Signature.query({rewardcardId:barcodenum}); $scope.signature = signature; alert("data is " + $scope.signature.name); <=== This is UNDEFINED }; }
apps.js文件
angular.module('demo', ['demo.filters', 'demo.directives','demo.services.signature']). config(['$routeProvider', function($routeProvider) { $routeProvider.when('/search', {templateUrl: 'partials/search.html', controller: SearchCtrl}); $routeProvider.otherwise({redirectTo: '/search'});
service.js文件
angular.module('demo.services.signature', ['ngResource']). factory('Signature', function($resource){ return $resource('api/signature/:rewardcardId', {}, { query: {method:'GET', params:{rewardcardId:'signature'}, isArray:false} }); });
这是调用数据库和服务器控制台显示以下消息;
com.sun.jersey.api.container.filter.LoggingFilter$Adapter finish
INFO: 1 * Server out-bound response
1 < 200
1 < Content-Type: application/json
1 <
{"name":"xxx xxxx","customerid":187,"email":"[email protected]","sign":null,"barcode":"xxxx"}
它会正确显示HTML页面的返回数据。例如,html页面有
<p>{{signature.barcode}}
{{signature.name}}
它们正确地显示名称和条形码与上述数据集一样。
它只有一个问题才能从未定义的javascript中获取数据。
每当javascript试图从数据库返回资源时获取数据,它就是undefined
。
哇!这正是我正在寻找的!非常感谢!你的回答是正确的! – user2845558