2016-10-26 128 views
-1

我有一个搜索页面,其中用户输入字段并单击搜索按钮。然后,我正在使用搜索查询和提取数据对Sharepoint 2013列表进行ajax调用。获取数据后,我将数据绑定到Kendo网格。按钮单击后将SharePoint列表数据绑定到Kendo网格

此SharePoint列表中包含了不同类型的像场:查找,选择,文本字段。来自选择列的数据,文本字段类型很容易绑定到网格,我也能够看到数据。但是在Kendo Grid中没有看到来自查找列的数据。

相反的数据,其示出

[对象的对象]

下面是AJAX调用的我提出的代码,并在成功我将数据绑定到剑道电网。

function fetchData(webUrl, filterString){ 
    $.ajax({ 
     url: webUrl +"/_api/web/lists/getByTitle('Inventory')/Items?$filter="+filterString, 
     method: 'get', 
     contentType: 'application/json;odata=verbose', 
     headers:{ 
      'X-RequestDigest': $('#__REQUESTDIGEST').val(), 
      'Accept': 'application/json;odata=verbose' 
     }, 
     success: function(data){ 
      var grid = $('#grdInventory').getKendoGrid(); 
      grid.dataSource.data(data.d.results); 
      grid.refresh(); 
     } 
    }); 
} 
  • 下面是网格的截图:在网格=

ID,简短描述,解析ID,解析名称是文本类型列

生产状态是选择列,

状态,平台在SharePoint中查找列

I circled the errors which is being seen

  • 下面是数据的截图被人看到在浏览器控制台:

Circled lookup Columns

任何人都可以帮我或给我的如何显示查找剑道列数据提示格。

回答

0

这是一个标准的行为,在这种情况下,查阅字段的值表示复杂属性和返回对象。根据应显示从查找列表什么领域(让我们假设在我们的例子Title),是越来越显示前栅格,你可以应用以下过滤器返回的数据:

var items = data.d.results.map(function(item){ 
    item.State = item.State.Title; //lets get Title from Lookup object 
    return item; 
}); 

,然后绑定数据:

var grid = $('#grdInventory').getKendoGrid(); 
grid.dataSource.data(items); 
grid.refresh(); 
相关问题