【问题标题】:How to get data from SharePoint list using JSOM?如何使用 JSOM 从 SharePoint 列表中获取数据?
【发布时间】:2016-05-03 17:19:01
【问题描述】:

通常我们从 SharePoint 服务器对象模型中获取数据。但我需要使用 JSOM 从 SharePoint 列表中收集数据。

我的要求如下:

有一个名为 List1 的列表,其中包含 3 列 ID、标题、状态

我需要获取所有 Status 为 1 且 Title = "My given title" 的数据

请提供使用 JSOM 的解决方案。

【问题讨论】:

    标签: javascript sharepoint sharepoint-2010 sharepoint-jsom


    【解决方案1】:

    here 文档很好地解释了 JavaScript 对象模型。

    本质上,您需要创建一个ClientContext 对象并使用它来指定要执行哪些指令。您将使用ClientContext.load() 指定要使用检索到的信息填充哪些对象,然后使用ClientContext.executeQueryAsync() 执行任何排队的指令。在您提供给executeQueryAsync 的回调函数的上下文中,您可以访问查询结果。

    下面的例子演示了典型的方法。

    <script>
    ExecuteOrDelayUntilScriptLoaded(getListItems,"sp.js");
    function getListItems(){
        var clientContext = new SP.ClientContext();
        var list = clientContext.get_web().get_lists().getByTitle("List1");
        var camlQuery = new SP.CamlQuery();
        camlQuery.set_viewXml( /* build a CAML query to retrieve your items */
            "<View><Query>" +
            "<Where>" + 
                "<And>" +
                    "<Eq><FieldRef Name=\"Status\"/><Value Type=\"Text\">1</Value></Eq>" +
                    "<Eq><FieldRef Name=\"Title\"/><Value Type=\"Text\">My given title</Value></Eq>" + 
                "</And>"+
            "</Where>" +
            "</Query></View>");
        var items = list.getItems(camlQuery);
        clientContext.load(items);
        clientContext.executeQueryAsync(function(){
            var itemArray = [];
            var itemEnumerator = items.getEnumerator();
            while(itemEnumerator.moveNext()){ 
                /* loop through all your results */
                var item = itemEnumerator.get_current();
                var id = item.get_item("ID");
                var title = item.get_item("Title");
                itemArray.push(id + ": " + title);
            }
            alert("ID: Title\n"+itemArray.join("\n"));
        },function(sender,args){alert(args.get_message());});
    }
    </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-21
      • 1970-01-01
      相关资源
      最近更新 更多