jquery - 通过 SOAP 查询 SharePoint 列表仅返回 View 的第一页

标签 jquery sharepoint soap caml

我正在尝试检索列表中的所有项目,但我只获取前 50 个项目(默认 View 的第一页)。最终,我想将列表中的所有项目拉入一个数组,我可以对其进行排序和解析,以一系列格式化的 XSLT 输出统计信息,但让我们首先解决第一个障碍。

这是我的代码:

<script src="/sites/mySite/Resources/jquery-1.8.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
    var soapEnv =
        "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/'> \
            <soapenv:Body> \
                     <GetListItems xmlns='http://schemas.microsoft.com/sharepoint/soap/'> \
                        <listName>myList</listName> \
                        <viewFields> \
                            <ViewFields> \
                               <FieldRef Name='Team_x0020_Assigned' /> \
                           </ViewFields> \
                        </viewFields> \
                    </GetListItems> \
                </soapenv:Body> \
            </soapenv:Envelope>";

        $.ajax({
            url: "/sites/mySite/_vti_bin/lists.asmx",
            type: "POST",
            dataType: "xml",
            data: soapEnv,
            complete: processResult,
            contentType: "text/xml; charset=\"utf-8\""
        });
    });

    function processResult(xData, status) {
        $(xData.responseXML).find("z\\:row").each(function() {
            var liHtml = "<li>" + $(this).attr("ows_Team_x0020_Assigned") + "</li>";
            $("#tasksUL").append(liHtml);
        });
    }
</script>

最佳答案

View 上可能设置了 rowLimit,您可以通过添加来覆盖它

<rowLimit>1000</rowLimit>

到 GetListItems 参数。

请注意,SharePoint 2010 可能会限制您的请求,并且不会返回超过 5000 或 20000 个(对于管理员)项目。这些设置可以在管理中心的 Web 应用程序设置中更改。

顺便说一句,如果您还没有这样做,您可能想考虑使用 XSLT ListView Web 部件。

关于jquery - 通过 SOAP 查询 SharePoint 列表仅返回 View 的第一页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15416361/

相关文章:

java - 将 UsernameToken (WS-Security-Header) 添加到 SOAP 消息

javascript - 难以在每个新 <div> 中添加新表单

javascript - jquery 类切换未关闭上一个

javascript - 使用 Rest API 的 Sharepoint 列表项总和

sharepoint - 我可以使用Office365 Powershell cmdlet来获取Sharepoint Online组及其成员名称吗?

web-services - SOAP-ERROR : Encoding: string . .. 不是有效的 utf-8 字符串

java - @XmlAttribute(name) SoapUI 中的名称无效

javascript - 如何在javascript中增加数据索引

javascript - 如何使用 jQuery 覆盖下拉列表中选项标签的 css 样式?

visual-studio-2010 - 尝试部署 SharePoint 2010 解决方案包时出错 - SharePoint 2010 - Visual Studio 2010