无法在SharePoint中检索列表值

时间:2017-01-19 17:22:17

标签: javascript sharepoint

所以我有一个列表,其中包含默认的标题字段和一个名为“Hours”的自定义数字字段。我希望能够在页面上显示这两个字段的值。显示它们很容易,但我无法检索它们。 我正在使用此代码:

 var json =  $.ajax({

        url: "[URL]/_api/web/lists/getbytitle([LIST NAME)/items",
        method: "GET",
        headers: { "Accept": "application/json; odata=verbose" },

    })

然后我可以导航JSON以获得结果,其中显示列表中每个项目的信息,但我只能找到“标题”字段,而不是“小时”字段。此外,我在一个单独的网站上尝试了它,并且能够获得“小时”数据,但它显示了奇怪的名称(d.results[i].o0ci)。我不确定这里发生了什么,所以任何帮助都将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

首先,您应该检查列的内部名称,假设我在sharepoint上有这个结构:

标题|小时|有空闲时间

内部的sharepoint往往会将这些列的名称更改为

标题|小时| Has_x0020_Free_x0020_Time

或者有时如果您创建了列但删除了它,可能会发生这种情况:

标题|小时1 | 0o13

请尝试使用此代码查看您的内部名称:

$.ajax({
    url: "[URL]/_api/web/lists/getbytitle([LIST NAME)/items",
    type: 'GET',
    headers: { "Accept": "application/json; odata=verbose" },
    dataType: 'JSON',
    success: function (data){

        $.each(data.d.results, function (index, value) {
           console.info(value) // You should see all sharepoint fields so you can check the correct fieldname of hours
           console.info("Title: ", value.Title);
           console.info("Hours: ", value.Hours);
        }

    }
});