1

I just noticed a javascript function that finds and populates people picker controls in SharePoint was not working in Edge, whereas it works fine in Chrome and IE.

In Edge I see an error in the console log related to the code below: 'SPClientPeoplePicker' is not defined

    var controlName = "External";
    var ppDiv = $("[id$='ClientPeoplePicker'][title='" + controlName + "']");
    var ppEditor = ppDiv.find("[title='" + controlName + "']");
    var spPP = SPClientPeoplePicker.SPClientPeoplePickerDict[ppDiv[0].id];

    ppEditor.val(cuser);
    spPP.AddUnresolvedUserFromEditor(true);

Has anyone else come across this? If so, any solutions?

1
  • Is there any updates ?
    – Jerry
    Sep 4, 2019 at 9:27

2 Answers 2

1

Add a reference to clientpeoplepicker.js will fix this error in Edge Browser:

<script type="text/javascript" src="/_layouts/15/clientpeoplepicker.js"></script> 
<script type="text/javascript">
 window.setTimeout(function() {
      SetAndResolvePeoplePicker("Account Manager", _spPageContextInfo.userLoginName);
      }, 750);



function SetAndResolvePeoplePicker(fieldName,Name) 
{

        var controlName = fieldName;
        var peoplePickerDiv = $("[id$='ClientPeoplePicker'][title='" + controlName + "']");
        var peoplePickerEditor = peoplePickerDiv.find("[title='" + controlName + "']");
        var spPeoplePicker = SPClientPeoplePicker.SPClientPeoplePickerDict[peoplePickerDiv[0].id];
        peoplePickerEditor.val(Name);
        spPeoplePicker.AddUnresolvedUserFromEditor(true);  
}
</script>
0
function SetAndResolvePeoplePicker(fieldName, userAccountName) {

var controlName = fieldName;

var peoplePickerDiv = $("[id$='ClientPeoplePicker'][title='" + controlName + "']");

var peoplePickerEditor = peoplePickerDiv.find("[title='" + controlName + "']");

var spPeoplePicker = SPClientPeoplePicker.SPClientPeoplePickerDict[peoplePickerDiv[0].id];

peoplePickerEditor.val(userAccountName);

spPeoplePicker.AddUnresolvedUserFromEditor(true);

//disable the field

spPeoplePicker.SetEnabledState(false);

//hide the delete/remove use image from the people picker

$('.sp-peoplepicker-delImage').css('display','none');

}

https://peakfinders.blogspot.com/2015/10/spclientpeoplepicker-is-undefined.html

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.