我只想知道:有没有什么办法从默认的sharepoint-2010用户配置文件DB获取使用JavaScript/jQuery的SharePoint用户?如何让用户从Sharepoint用户配置文件数据库使用jquery
我的要求是组成一个所有SharePoint站点用户(用户名)的数组,并将这个数组作为SPServices函数的数据源在java函数中使用(在客户端的页面后面运行)。
请提供任何可行的解决方案或任何其他方法来构建JavaScript数组。
感谢
我只想知道:有没有什么办法从默认的sharepoint-2010用户配置文件DB获取使用JavaScript/jQuery的SharePoint用户?如何让用户从Sharepoint用户配置文件数据库使用jquery
我的要求是组成一个所有SharePoint站点用户(用户名)的数组,并将这个数组作为SPServices函数的数据源在java函数中使用(在客户端的页面后面运行)。
请提供任何可行的解决方案或任何其他方法来构建JavaScript数组。
感谢
有两种方法可以做到这一点:
使用客户端对象模型(OM)的ECMAScript中:
SharePoint 2010: Client Object Model for JavaScript (ECMAScript)
第一篇文章解释了如何使用OM检索关于SharePoint用户的信息,第二篇文章展示了如何从JavaScript使用OM - 您必须组合适当的代码段。使用jQuery
呼叫从UserGroup service(例如GetAllUserCollectionFromWeb
或GetUserCollection
)适当的方法:
使用来自codeplex的SPServices:
<script type="text/javascript">
$(document).ready (function() {
$().SPServices({
operation: "GetListItems",
async: true,
listName: "User Information List",
CAMLViewFields: "<ViewFields>" +
"<FieldRef Name='Title' />" +
"</ViewFields>",
completefunc: AttachMembersAutoComplete
});
});
function AttachMembersAutoComplete(xmlResponse) {
var domElementArray = $("[nodeName=z:row]", xmlResponse.responseXML);
var dataMap = domElementArray.map(function() {
return {
value: $(this).attr('ows_Title'),
};
});
var data = dataMap.get();
$("input#inputMembersAutoComplete").autocomplete({
source: data,
select: function(e, ui){
var tmpHTML = ui.item['value'];
$("#person_info").html(tmpHTML);
}
});
}
</script>