我对这个错误或各种解决方案并不陌生,但是这个让我挠了挠头。我正在使用JavaScript对象模型来获取给定文件夹中所有文件的所有列表。我在下面的代码中得到getEnumerator的错误。我已经剥离下来的代码,以最低限度:Sharepoint 2010 JSOM getEnumerator'集合尚未初始化。它没有被要求......'
function getFilesInFolder() {
var folderServerRelativeUrl = folderPath + ID;
var context = new SP.ClientContext.get_current();
var web = context.get_web();
var list = web.get_lists().getByTitle(documentLibraryName);
var query = SP.CamlQuery.createAllItemsQuery();
query.set_folderServerRelativeUrl(folderServerRelativeUrl);
//Update "web part" link
$("#doclink").attr('href',folderServerRelativeUrl);
files = list.getItems(query)
context.load(files, 'Include(Id)');
context.executeQueryAsync(Function.createDelegate(this, this.OnSuccess), Function.createDelegate(this, this.OnFailure));
}
function OnSuccess()
{
//ERROR Next Line:
var listItemEnumerator = this.files.getEnumerator();
var table = $("#attachments");
while (listItemEnumerator.moveNext())
{
console.log("Found a file");
}
}
的代码是在文件的开头称为例如: $(文件)。就绪(函数(){// 其他代码。 .. ExecuteorDelayUntilScriptLoaded(getFilesInFolder,“sp.js”); });
我已经尝试了大量的变化,并且它用于工作(不知道服务器或客户端发生了什么变化)。
感谢您的确认,我不确定我是否疯了。 :)我应该提到我确实确认了路径是正确的。我认为瓦迪姆可能是正确的,我有范围问题。我会让你知道结果是什么! –