我已经创建了一个表单,该表单通过SharePoint的UPS自动从AD中提取个人(peoplepicker)的办公位置,并将其填充到输入字段中。我所遇到的困难是,拉出多个人的办公地点,并使其解析每个人各自的办公地点,并将其放置在实地。任何想法或帮助都将不胜感激。
这是表单,如您所见,它可以填充一个人的办公室,但不能填充其他人:
发布于 2016-12-27 19:41:12
经过进一步的研究,我想感谢这个有用的JavaScript SharePoint库:http://spjsfiles.com/index.php?dir=SharePoint%20JavaScripts/spjs-utility/的作者。
此库从SharePoint主列表中获取用户的信息。您可以使用以下函数获得此结果:函数fillFieldDemo(){
setFieldValue('Date', '1/1/2017');
setFieldValue('MM','Boston;London');
var userInfo = getUserInfo_v2(_spPageContextInfo.userId);
setFieldValue('Person', userInfo.Name);
setTimeout(function(){
var title = getFieldValue('Person');
setFieldValue('Title', title);
}, 2000);
}
_spBodyOnLoadFunctionNames.push("fillFieldDemo");现在你可以找到用户的名字,办公室等。
为了解析输入文本框中的多个名称并分别提取它们的位置,您可以更改此函数,如下所示:
function fillFieldDemo() {
$('.button').on('click', function() {
var subjects = $('.ms-entity-resolved');
var offices = [];
for (var i = 0; i < subjects.length; i++) {
var s = $(subjects[i]).prop("title");
var print = $('.name').val(s);
var userInfo = **getUserInfo_v2**(s);
for (var key in userInfo) {
var value = userInfo.**Office**;
}
offices.push(value);
}
var input = $('.parse').val(offices);
});
}
_spBodyOnLoadFunctionNames.push("fillFieldDemo");这将允许用户在输入文本框中输入多个名称,并将解析这些名称并获取每个人的办公室。
https://stackoverflow.com/questions/40619322
复制相似问题