2016-08-02 52 views
1

我已經創建並添加了一些文本框,並且我創建了一個工作良好的人員選擇器,我甚至可以在我的字段中選擇多個用戶,但是如果我在列表中的peoplepicker中選擇了2個人只能保存1人。所以,如果我在人們選擇1個多用戶選取器是這樣的:enter image description here如何爲多個用戶使用人員選擇器? SharePoint 2013

在我的名單只是第一個名字被保存這樣的: enter image description here

Audienca列是文本的單行

如何我可以同時節省用戶

我的人選擇器的代碼是這樣的:

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#代碼

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); 

} 

這是代碼當我嘗試保存我的數據

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); 

回答

1

,如果你在改變用戶的陣列會發生什麼你的循環使用[I]而不是[0]像這樣:

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

另外,我會用一個人或組colu這將帶來更多的功能,如presence indicatiors。確保列表中的字段設置爲允許多個選項 in the list settings.

相關問題