我需要获取存储在 SharePoint 列表中的用户的信息,例如标题、ID 和登录名。
基本上我的情况是这样的:我有一个“组织联系人”列表,其中包括特定用户的 Office365Account,以及与该用户关联的经理。这两个字段都是 SharePoint“人员”字段。
下面的代码是我的尝试:
- 查询列表以获取具有与当前用户匹配的 Office365Account 的项目(行)。
- 从该项目(行)中读取经理字段。
我知道我正在尝试的技术有问题,因为当var managerName
未注释开头的行时应用程序会冻结。Chrome 开发工具似乎告诉我所有其他线路都在工作,或者至少不会导致错误,所以我认为问题出var managerName
在线路上。
function getManagerNameforModal() {
var hostUrl = decodeURIComponent(getQueryStringParameter("SPHostUrl"));
var hostContext = new SP.AppContextSite(currentContext, hostUrl);
var hostweb = hostContext.get_web();
var list = hostweb.get_lists().getByTitle(contactsListName);
//A caml query to get manager name for the record where user is equal to current user.
var queryXml = "<View><Query><Where><Eq><FieldRef Name='Office365Account' /><Value Type='Integer'><UserID /></Value></Eq></Where></Query></View>"
var query = new SP.CamlQuery();
query.set_viewXml(queryXml);
var items = list.getItems(query);
var managerName = items.get_item["Manager"].get_title(); //This doesn't work.
currentContext.load(items);
currentContext.executeQueryAsync(onGetManagerNameSuccess, onGetManagerNameFail);