我對這個錯誤或各種解決方案並不陌生,但是這個讓我撓了撓頭。我正在使用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」); });
我已經嘗試了大量的變化,並且它用於工作(不知道服務器或客戶端發生了什麼變化)。
感謝您的確認,我不確定我是否瘋了。 :)我應該提到我確實確認了路徑是正確的。我認爲瓦迪姆可能是正確的,我有範圍問題。我會讓你知道結果是什麼! –