Sharepoint列表中的getJSON停止在1000

时间:2012-12-14 16:30:18

标签: javascript jquery list sharepoint getjson

$.getJSON("urlhere", {}, function(data)
{
     // Other code is commented out, I'm just using the following loop to test.
     for(var a = 0; a < 2546; a++)
          if(a > 995)
               alert((a + 1) + ": " + data.d.results[a].Column2);
});

出于某种原因,我没有从我的列表中获得所需的所有内容。所以我放入这个循环来测试它,由于某种原因它停在1000。为什么会发生这种情况?如何解决?

2 个答案:

答案 0 :(得分:1)

SharePoint每个“页面”仅返回1000个结果。如果你看,在JSON底部附近应该有一个“链接”元素,其中包含指向下一个1000个结果的链接。

无论如何,当它返回XML时就是这样。没有尝试过JSON,但我确信它是相似的。

答案 1 :(得分:0)

'urlForListData' + '?$filter=Building eq \'' + building + '\''

我发现你可以过滤你需要的列表,以便它永远不会超过1000,这比我以前做的简单得多。当然,Building是SharePoint列表中的一列,而building是一个包含所请求的建筑物编号的变量。