sp.js按内容类型获取所有列表

时间:2013-08-09 19:22:20

标签: javascript sharepoint sharepoint-2013

我已经梳理了sp命名空间文档,但没有找到太多内容。

我从http://www.c-sharpcorner.com/Blogs/12134/how-to-get-the-list-content-types-using-csom-in-sharepoint-2.aspx

找到了这个代码段
          //// String Variable to store the siteURL
        string siteURL = "http://c4968397007/";

        //// Get the context for the SharePoint Site to access the data
        ClientContext clientContext = new ClientContext(siteURL);

        //// Get the content type collection for the list "Custom"
        ContentTypeCollection contentTypeColl = clientContext.Web.Lists.GetByTitle("Custom").ContentTypes;

        clientContext.Load(contentTypeColl);
        clientContext.ExecuteQuery();

        //// Display the Content Type name
        foreach (ContentType ct in contentTypeColl)
        {
            Console.WriteLine(ct.Name);
        }
        Console.ReadLine();

将获得某个列表内容类型。

我的想法是获取所有列表,然后获取所有内容类型,然后使用他们的ID /标题查询数据列表。
在显示模板中似乎要做很多工作。

我是在正确的道路上还是我缺少的东西?任何sp wiz在那里都会关注新的search / js架构吗?

1 个答案:

答案 0 :(得分:0)

您可能希望使用SharepointPlus或热门SPServices等JavaScript库。

我认为SharepointPlus的语法更简单,代码类似于:

$SP().lists(function(list) {
  for (var i=0; i<list.length; i++) {
    // list[i]['Name'] contains the name of the list
    $SP().list(list[i]['Name']).get(/* something */)
  }
});

您谈到了内容类型。因此,您可能还需要查看the info() function并选中名为“ContentTypeId”的字段。

仅供参考我创建了这个SharepointPlus库。