簡體   English   中英

活躍用戶部門的Sharepoint-2013填充字段

[英]Sharepoint-2013 Fill field with active users department

我有一些代碼可以在SP PeoplePicker中查找用戶並返回用戶部門。

我想要實現的是用當前用戶的部門自動填充一個字段,因為我不需要人員選擇字段。 當前的用戶數據應該是可檢索的,或者我應該能夠在沒有人員選擇字段的情況下通過人員選擇進行搜索。

因此,我將以下腳本添加到內容編輯器中:

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery.SPServices/2014.02/jquery.SPServices-2014.02.min.js"></script>

<script> 
    $(document).ready(function()
    { 
        var PeoplePicker = $("div[title='test_column']"); 
        var PeoplePickerTopId = PeoplePicker.attr('id'); 
        var ppobject = SPClientPeoplePicker.SPClientPeoplePickerDict[PeoplePickerTopId]; 

        ppobject.OnValueChangedClientScript = function(elementId, userInfo){getUserData()};       
    });

    function getUserData()
    { 
        //Set variables
        var UserDept;
        var i;
        var _PeoplePicker = $("div[title='test_column']"); 
        var _PeoplePickerTopId = _PeoplePicker.attr('id'); 
        var ppobject = SPClientPeoplePicker.SPClientPeoplePickerDict[_PeoplePickerTopId]; 

        // Call GetAllUserInfo to read PeoplePicker entries
        editorsInfo = ppobject.GetAllUserInfo(); 

        // Set Customer Info
        if(editorNames!= null)
            {UserDept = editorsInfo[0].EntityData.Department;} 

        $("input[title='Department']").val(UserDept)
    }
</script>

注意,我無權訪問Sharepoint Designer。 我正在嘗試僅從Web視圖獲得此功能。

此外,如果答案需要AJAX或從httpget帖子中返回值,那么您能否徹底回答這個問題,因為我以前從未使用過AJAX,並且從網絡服務器接收響應的經驗有限。

提前致謝!

您可以使用SPServices Jquery。 只需下載最新的。 您正在使用Sharepoint 2013,因此請使用腳本編輯器而不是內容編輯器。 以下是我經常使用且效果良好的腳本。

 <script type="text/javascript" src="/your path to JS/SiteAssets/JS/jquery-3.1.1.js"></script> <script type="text/jscript" src="/your path to JS/SiteAssets/JS/jquery.SPServices.min.js"></script> <script type="text/javascript"> $(document).ready(function() { var UserDept = $().SPServices.SPGetCurrentUser({ fieldName: "Department", debug: false }); $("input[title*='Department']").val(UserDept); // For assigning to SharePoint column named 'Department' $("#txtDept").val(UserDept); // For assigning to textbox }); </script> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM