如何将人们从特定的Sharepoint组中获取到Sharepoint Online中的ClientPeoplePicker?

时间:2019-07-16 05:00:38

标签: rest sharepoint-online peoplepicker

我尝试使用ClientPeoplePickerSearchUser。有人可以帮我吗?我关注了以下链接:http://sharepointfieldnotes.blogspot.com/2014/06/sharepoint-2013-clientpeoplepicker.html

2 个答案:

答案 0 :(得分:1)

您需要在代码中设置“ SharePointGroupID”属性,以限制来自客户端人员选择器中特定SharePoint组的搜索人员。

function search(request,response) {
    var appweburl = decodeURIComponent(getQueryStringParameter('SPAppWebUrl'));
    var hostweburl = decodeURIComponent(getQueryStringParameter('SPHostUrl'));
    var restSource = appweburl + "/_api/SP.UI.ApplicationPages.ClientPeoplePickerWebServiceInterface.clientPeoplePickerSearchUser";
    var principalType = this.element[0].getAttribute('principalType');
    $.ajax( 
    {
        'url':restSource,
        'method':'POST',
        'data':JSON.stringify({
            'queryParams':{
                '__metadata':{
                    'type':'SP.UI.ApplicationPages.ClientPeoplePickerQueryParameters'
                },
                'AllowEmailAddresses':true,
                'AllowMultipleEntities':false,
                'AllUrlZones':false,
                'MaximumEntitySuggestions':50,
                'PrincipalSource':15,
                'PrincipalType': principalType,
                'QueryString':request.term
                //'Required':false,
                'SharePointGroupID':23,
                //'UrlZone':null,
                //'UrlZoneSpecified':false,
                //'Web':null,
                //'WebApplicationID':null
            }
        }),
        'headers':{
            'accept':'application/json;odata=verbose',
            'content-type':'application/json;odata=verbose',
            'X-RequestDigest':requestDigest
        },
        'success':function (data) { 
            var d = data;
            var results = JSON.parse(data.d.ClientPeoplePickerSearchUser);
            if (results.length > 0) {
                response($.map(results, function (item) {
                    return {label:item.DisplayText,value:item.DisplayText}
                }));
            }            
        },
        'error':function (err) { 
            alert(JSON.stringify(err)); 
        }
    }
  );
}

答案 1 :(得分:0)

谢谢。我也在尝试设置Web属性,这给了我错误。