繁体   English   中英

如何在angularjs中以ng-grid显示json数据

[英]how to display json data in ng-grid in angularjs

我是Angularjs的新手,我想通过使用ng-grid将web服务响应中的JSON数据显示为网格形式。我的代码在这里

function TestController($scope, $http) {
alert("test");
$http({
      url: 'http://my_Personal_Url',
      method: "POST",
      data: postData,
      headers: {'Content-Type': 'application/jsonp'}
  }).success(function (data, status, headers, config) {
          $scope.persons = data; //  
      }).error(function (data, status, headers, config) {
          alert("test2");
          $scope.status = status;
      });

但是在上面的代码中没有定义PostData。我的网格范围是这样的

 $scope.gridOptions = { 
data: 'myData',
columnDefs: [
{field: 'DirectLine', displayName: 'DirectLine'},
{field:'Email', displayName:'Email'}
{field:'Employee', displayName:'Employee'}
{field:'Extention', displayName:'Extention'}
{field:'Id', displayName:'Id'}
{field:'PhoneNumber', displayName:'PhoneNumber'}
{field:'Title', displayName:'Title'}
]
 };

NO如何从json对象获取数据到myData? 所以我可以使用ng-grid作为

<div ng-controller="TestController">

    <div class="gridStyle" ng-grid="gridOptions"></div>
</div>

这里是我的个人网址(它是保密的,所以我不想显示)上面的代码显示有时因为postData没有定义,有时会出现405错误。

请用plunker链接解释问题

ng-grid中的' data '属性接受数据对象的名称,在您的情况下,名称为“persons”,因为您的HTTP请求的响应转到$scope.persons

例:

 $scope.gridOptions = { 
data: 'persons',
columnDefs: [
{field: 'DirectLine', displayName: 'DirectLine'},
{field:'Email', displayName:'Email'}
{field:'Employee', displayName:'Employee'}
{field:'Extention', displayName:'Extention'}
{field:'Id', displayName:'Id'}
{field:'PhoneNumber', displayName:'PhoneNumber'}
{field:'Title', displayName:'Title'}
]
 };

实例: http//plnkr.co/edit/UndbtO?p = preview

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM