2016-07-06 168 views
1

這是後端的Spring Rest控制器,它可以簡單地獲取列表中的所有學生。我已經測試過它並且工作正常。

@RestController 
@RequestMapping("a/rest") 
public class RestfulController { 

    @Autowired 
    private StudentDao studentDao; 
    @RequestMapping(method = RequestMethod.GET) 
    public ResponseEntity<List<Student>> index() { 
     ResponseEntity<List<Student>> studList = new ResponseEntity<List<Student>>(studentDao.getAll(), HttpStatus.OK); 
     return studList; 
    } 
} 

這就是我試圖做我想做的學生該列表中與ID加載功能showData段落定義(ID =「displayData」)

我創建按鈕來顯示( )

那麼我想實現Angularjs的$ HTTP服務連接以這種方式

<body> 

<input type="button" value="Get Data" onclick="showData()" /> 
<p id="displayData" /> 

</body> 

<script type="text/javascript"> 

function showData() { 
$http({ 
    method: 'GET', 
    url: 'a/rest' 
}).then(function (response) { 

    $('#displayData').html(JSON.stringify(response)); 

    }); 

} 
</script> 

在這裏,我需要幫助..!問題在於前端。我怎樣才能實現$ http服務工作文件?

+0

您面臨的問題是什麼? – Praveen

+0

@Praveen:我必須在

中顯示該數據,但它不起作用。 –

回答

0

$ HTTP響應將包含

$http response json

性能。 $ http response.data包含實際的json數據。它不工作的方式jQuery($.ajax())的工作。 您需要引導您的角度應用程序,然後才能使用$http服務。

下面是最適合您需要的示例。

<!DOCTYPE html> 
<html> 
<head> 
    <script src="https://code.jquery.com/jquery-1.12.4.js"></script> 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.7/angular.min.js"></script> 
</head> 
<body ng-app="studApp" ng-controller="StudController"> 

    <input type="button" value="Get Data" ng-click="showData()" /> 
    <p id="displayData" /> 

    <script type="text/javascript"> 
     angular.module('studApp', []) 
     .controller('StudController', function($http, $scope) { 
      $scope.showData = function() { 
      $http({ 
       method : 'GET', 
       url : 'a/rest' 
      }).then(function(response) { 
       $('#displayData').html(JSON.stringify(response.data)); 
      }); 
      } 
     }); 
    </script> 
</body> 
</html> 
+0

謝謝YR先生:)它的工作流暢..! –

0

試試這個

$( '#displayData')HTML(JSON.stringify(response.data))。

服務器端返回的數據是JSON字符串嗎?

+0

服務器正在返回JSON數據,JSON.stringify(respose)用於將其轉換爲字符串,$('#displayData')。html用於將該字符串數據放入

中。你的代碼沒有工作。如果你之前有類似的實施,你可以分享嗎? –

+0

嘗試改變,然後成功 –