javascript - 为什么我总是得到属性或字段尚未初始化?

标签 javascript sharepoint

您好,我尝试使用特定字段填充数组。但我总是得到:属性或字段尚未初始化。尚未请求或请求尚未执行。可能需要明确请求。 我使用的是 Sharepoint 2013,并且使用来自 sharepoint 的内部名称。我认为我的 Caml 查询有问题。

这是我使用的代码:

 function retrieveListItems(siteUrl) {

        var clientContext = new SP.ClientContext(siteUrl);
        var oList = clientContext.get_web().get_lists().getByTitle('MatrixFiles');

        var camlQuery = new SP.CamlQuery();
        camlQuery.set_viewXml('<View><ViewFields><FieldRef Name="LinkFilename" /><FieldRef Name="WebCountry" /><FieldRef Name="WebDepartment" /><FieldRef Name="FileLeafRef" /></ViewFields><Query><OrderBy><FieldRef Name="LinkFilename" /></OrderBy></Query></View>');
        this.collListItem = oList.getItems(camlQuery);

        clientContext.load(collListItem);

        clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));

    }

这是数组的另一部分:

function onQuerySucceeded(sender, args) {

    var listItemInfo = '';
    var array = [];

    var listItemEnumerator = this.collListItem.getEnumerator();

    while (listItemEnumerator.moveNext()) {
        var oListItem = listItemEnumerator.get_current();
        console.log(oListItem);

        array.push(oListItem);



    }

    alert(oListItem.get_item('LinkFilename'));


}

奇怪的是,数组被 SPListItems 填充,但是当我尝试在警报中使用特定字段时,就会发生错误。不知道为什么......

任何帮助都会很棒,谢谢您的时间。

顺便说一句,我用了SP Caml Query helper为此。

最佳答案

尝试使用FileLeafRef。 LinkFilename 是一个不起作用的计算字段。

msdn - Not able to search list using LinkFileName

关于javascript - 为什么我总是得到属性或字段尚未初始化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36601388/

相关文章:

sharepoint - 具有两个或多个参数的 ITransformableFilterValues 接口(interface) [SharePoint WebParts]

sharepoint - 如何更改共享点工作流任务状态?

powershell 中的日期/时间条件 - SharePoint - LastItemModifiedDate - LastRunTime

javascript - 通过 AJAX 将 JSON 对象发布到 ASP.NET Core Web API

javascript - jQuery Shake 打破了位置 :fixed

javascript - Nativescript 应用程序无需使用服务器即可从本地浏览器接收数据

javascript - if php 中不显示 javascript

c# - 使用 LINQ 将字段从 Listitem 转换为 List<T>

azure - 在计时器功能应用程序中执行 CSOM 代码时出现 400 bad request 错误

javascript - 从服务器到客户端的 UTC 偏移量