I have a few people picker controls on newform.aspx that seem to have stopped pre-populating.
I get this error...
input.value = currentUser;//'Default Specification Assignment';Unable to set property 'value' of undefined or null reference
<script type="text/javascript">
_spBodyOnLoadFunctionNames.push("fillDefaultValues");
function fillDefaultValues() {
var userid = _spPageContextInfo.userId;
$.ajax({
url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/getuserbyid(" + userid + ")",
contentType: "application/json;odata=verbose",
headers: { "accept": "application/json;odata=verbose" },
success: onSuccess,
error: onError
});
function onSuccess(data, request) {
var currentUser = data.d.Title;
var div, input, picker;
div= getTagFromIdentifierAndTitle("div", "", "Specification Assignment");
input = getTagFromIdentifierAndTitle("input", "", "Specification Assignment");
input.value = currentUser;//'Default Specification Assignment Group';
picker = SPClientPeoplePicker.SPClientPeoplePickerDict[div.id];
picker.AddUnresolvedUserFromEditor(true);
}
function onError(error) {
alert(error);
}
}
function getTagFromIdentifierAndTitle(tagName, identifier, title) {
var len = identifier.length;
var tags = document.getElementsByTagName(tagName);
for (var i = 0; i < tags.length; i++) {
var tempString = tags[i].id;
if (tags[i].title == title && (identifier == "" || tempString.indexOf(identifier) == tempString.length - len)) {
return tags[i];
}
}
return null;
}</script>Thank you!