我有一个文档库 SP 2013,想要从所有文件夹和子文件夹中获取所有文档。我不想要任何文件夹,但我确实想从每个文件夹中获取所有文件。
使用 SP 2010 U2U CAML 生成器,我进行了以下查询:
<query>
<QueryOptions>
<ViewAttributes Scope="Recursive" />
</QueryOptions>
</query>
此查询在 SP 2010 中的库中工作正常,但不适用于 SP 2013
下面是从 SP 2013 库中获取数据的代码
CAMLQuery = "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/'>
<soapenv:Body>
<GetListItems xmlns='http://schemas.microsoft.com/sharepoint/soap/'>
<listName>My Document Library</listName>
<query>
<QueryOptions>
<ViewAttributes Scope="Recursive" />
</QueryOptions>
</query>
</GetListItems>
</soapenv:Body>
</soapenv:Envelope>";
$.ajax({
url: "https://<server>/teams/<siteName>/_vti_bin/lists.asmx",
type: "POST",
dataType: "xml",
data: CAMLQuery,
complete: getGrid,
contentType: "text/xml; charset="utf-8""
});
getGrid 是完成时的回调函数
请帮我解决这个问题。
你必须在视图标签中给出范围,如下所示:
<View Scope="RecursiveAll">
<Query>
<Where>...</Where>
</Query>
</View>
请使用 SP。用于更新视图范围的"视图范围"属性对于递归,值为 1。
var view= list.get_views().getByTitle("YourView");
view.set_scope(2);
https://msdn.microsoft.com/en-us/library/office/ee548053(v=office.14).aspx