2016-08-02 6 views
1

Ich habe eine erstellt und einige Textbox darin hinzugefügt, und ich habe eine Personenauswahl erstellt, die gut funktioniert, kann ich sogar mehrere Benutzer in meinem Feld auswählen, aber wenn ich 2 Personen in Peoplepicker in meiner Liste ist nur 1 Person gespeichert werden. Also, wenn ich mehr als 1 von Menschen wählen Picker wie folgt aus: enter image description hereWie wird die Personenauswahl für mehrere Benutzer verwendet? SharePoint 2013

Audienca Spalte ist eine einzelne Textzeile

Wie: enter image description here

In meiner Liste nur Vornamen wie diese gespeichert wird kann ich beide Benutzer

Meine Leute Picker Code speichern, ist dies:

My ascx

<SharePoint:ScriptLink ID="ScriptLink1" Name="clienttemplates.js" runat="server" LoadAfterUI="true" Localizable="false" /> 
<SharePoint:ScriptLink ID="ScriptLink2" Name="clientforms.js" runat="server" LoadAfterUI="true" Localizable="false" /> 
<SharePoint:ScriptLink ID="ScriptLink3" Name="clientpeoplepicker.js" runat="server" LoadAfterUI="true" Localizable="false" /> 
<SharePoint:ScriptLink ID="ScriptLink4" Name="autofill.js" runat="server" LoadAfterUI="true" Localizable="false" /> 
<SharePoint:ScriptLink ID="ScriptLink5" Name="sp.js" runat="server" LoadAfterUI="true" Localizable="false" /> 
<SharePoint:ScriptLink ID="ScriptLink6" Name="sp.runtime.js" runat="server" LoadAfterUI="true" Localizable="false" /> 
<SharePoint:ScriptLink ID="ScriptLink7" Name="sp.core.js" runat="server" LoadAfterUI="true" Localizable="false" /> 


<div id="audienceSelector" style="float: left;"></div> 
    <div class="clear">&nbsp;</div> 
    <div class="clear">&nbsp;</div> 
    <div class="clear">&nbsp;</div> 
    <div class="clear">&nbsp;</div> 

C# -Code

initializePeoplePicker('audienceSelector');//this is on top 


function initializePeoplePicker(peoplePickerElementId) { 

// Create a schema to store picker properties, and set the properties. 
var schema = {}; 
schema['PrincipalAccountType'] = 'User,DL,SecGroup,SPGroup'; 
schema['SearchPrincipalSource'] = 15; 
schema['ResolvePrincipalSource'] = 15; 
schema['AllowMultipleValues'] = true; 
schema['MaximumEntitySuggestions'] = 50; 
schema['Width'] = '300px'; 


// Render and initialize the picker. 
// Pass the ID of the DOM element that contains the picker, an array of initial 
// PickerEntity objects to set the picker value, and a schema that defines 
// picker properties. 
SPClientPeoplePicker_InitStandaloneControlWrapper(peoplePickerElementId, null, schema); 

} 

dies der Code ist, wenn ich versuche, meine Daten zu speichern

var itemCreateInfo = new SP.ListItemCreationInformation(); 
    var listItem = quizList.addItem(itemCreateInfo); 
    var peoplePicker = SPClientPeoplePicker.SPClientPeoplePickerDict.audienceSelector_TopSpan; 
    // Get information about interviewer 
    var users = peoplePicker.GetAllUserInfo(); 

    for (var i = 0; i < 1; i++) { 
     user = users[0]; 
     interviewerName = user["DisplayText"]; 
    } 

    listItem.set_item("Title", $('#newTestName').val()); 
    //listItem.set_item("Audienca", $('#audienceSelector').val().toString()); 

    listItem.set_item("Audienca", interviewerName); 

Antwort

1

Was passiert, wenn Sie den Benutzer-Array in der For-Schleife [I] zu verwenden, ändern geschieht anstelle von [0] wie folgt aus:

for (var i = 0; i < 1; i++) { 
    user = users[i]; 
    interviewerName = user["DisplayText"]; 
} 

auch würde ich eine Person oder eine Gruppe colu verwenden Mn, die mehr Funktionalität wie presence indicatiors bringen wird. Stellen Sie sicher, dass das Feld in der Liste so eingestellt ist, dass Mehrfachauswahl möglich ist. in the list settings.

Verwandte Themen