首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在javascript中解析出多选择器

在javascript中解析出多选择器
EN

Stack Overflow用户
提问于 2016-11-15 20:42:29
回答 1查看 52关注 0票数 0

我已经创建了一个表单,该表单通过SharePoint的UPS自动从AD中提取个人(peoplepicker)的办公位置,并将其填充到输入字段中。我所遇到的困难是,拉出多个人的办公地点,并使其解析每个人各自的办公地点,并将其放置在实地。任何想法或帮助都将不胜感激。

这是表单,如您所见,它可以填充一个人的办公室,但不能填充其他人:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-27 19:41:12

经过进一步的研究,我想感谢这个有用的JavaScript SharePoint库:http://spjsfiles.com/index.php?dir=SharePoint%20JavaScripts/spjs-utility/的作者。

此库从SharePoint主列表中获取用户的信息。您可以使用以下函数获得此结果:函数fillFieldDemo(){

代码语言:javascript
复制
    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");

现在你可以找到用户的名字,办公室等。

为了解析输入文本框中的多个名称并分别提取它们的位置,您可以更改此函数,如下所示:

代码语言:javascript
复制
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");

这将允许用户在输入文本框中输入多个名称,并将解析这些名称并获取每个人的办公室。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40619322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档