Sharepoint - 在显示表单中获取用户的帐户ID

时间:2014-08-26 18:15:09

标签: sharepoint sharepoint-2010

我想在显示表单中的“人员或群组”字段中获取用户帐户ID:

enter image description here

有可能吗?

1 个答案:

答案 0 :(得分:1)

这实际上比较了两个用户名,所以希望这对你有用。另一种方法是从显示的文本中获取用户名,而不是再次查询列表。

在SharePoint设计器中打开DispForm.aspx,并在“PlaceHolderAdditionalPageHead”部分添加此脚本

<script>
    function GetQueryStringParams(sParam)
    {
        var sPageURL = window.location.search.substring(1);
        var sURLVariables = sPageURL.split('&');
        for (var i = 0; i < sURLVariables.length; i++) 
        {
            var sParameterName = sURLVariables[i].split('=');
            if (sParameterName[0] == sParam) 
            {
                return sParameterName[1];
            }
        }
    }

    $( document ).ready(function() {        
        //var user = $().SPServices.SPGetCurrentUser();
        var user = $().SPServices.SPGetCurrentUser({
                      fieldName: "Title"
                    });

        var requester;
        var id= GetQueryStringParams('ID');

            $().SPServices({
                operation: 'GetListItems',
                async: false,
                debug: false,
                listName: 'PollVotes',
                CAMLQuery: '<Query><Where><Eq><FieldRef Name="ID"/><Value Type="Counter">' + id + '</Value></Eq></Where></Query>',
                completefunc: function (xData, Status) {
                    var xNode = $(xData.responseXML).SPFilterNode("z:row")[0];
                    if (xNode != null)
                    {
                        $(xData.responseXML).SPFilterNode("z:row").each(function () {
                            requester = $(this).attr("ows_Requester");
                        });
                    }
                }
            });

        if(requester.split('#')[1] + " - " + user)
            alert("The Requester equals the Current User");
    });

</script>