javascript 取得当前用户的组和权限(上)
来源:互联网 发布:成都和重庆公务员知乎 编辑:程序博客网 时间:2024/05/16 18:49
最近需求要用javascript 取得当前用户的组和权限, 首先先要取得用户名
取得用户名有2种方法
1 通过页面上的welcome信息
2 通过sharepoint webservice
方法1:
<div>
UserName:
<input type="text" id = "userName"/>
</div>
<script language="JavaScript">
function getCurrentUser()
{
var tags = document.getElementsByTagName('a');
for (var i=0; i < tags.length; i++)
{
if(tags[i].innerText.substr(0,7) == 'Welcome')
document.getElementById('userName').value = tags[i].innerText.substr(8,tags[i].innerText.length);
}
}
getCurrentUser();
</script>
方法2:通过不同的webservice有两种方式
2.1 通过_sqUserId从User Infomation List中取得,
不过这个方法有个缺点,这个列表只存在于顶级网站中,而且需要用户有权限
<div>
UserName:
<input type="text" id = "userName"/>
</div>
<script type="text/javascript" src="Shared Documents/SPAPI_Core.js">
</script>
<script type="text/javascript" src="Shared Documents/SPAPI_Lists.js">
</script>
<script type="text/javascript">
function getCurrentUser()
{
var lists = new SPAPI_Lists('')
var items = lists.getListItems(
'User Information List',
'',
'<Query><Where><Eq><FieldRef Name="ID"/><Value Type="Counter">' + _spUserId + '</Value></Eq></Where></Query>', // query
'<ViewFields><FieldRef Name="Name"/></ViewFields>',
1, // rowLimit
'' // queryOptions
);
if (items.status == 200)
{
var rows = items.responseXML.getElementsByTagName('z:row');
document.getElementById('userName').value = rows[0].getAttribute('ows_Name');
}
}
getCurrentUser();
</script>
2.2直接通过如下方法
<div>
UserName:
<input type="text" id = "userName"/>
</div>
<script type="text/javascript" src="Shared Documents/SPAPI_Core.js">
</script>
<script type="text/javascript" src="Shared Documents/SPAPI_Lists.js">
</script>
<script type="text/javascript" src="Shared Documents/SPAPI_UserProfile.js">
</script>
<script type="text/javascript">
function getCurrentUser()
{
var Profile = new SPAPI_UserProfile('http://moss/Dalian/');
var Profiledata = Profile.getUserProfileByName(null);
if(Profiledata.status == 200)
{
var rows = Profiledata.responseXML.getElementsByTagName('PropertyData');
for(var i = 0; i<rows.length; i++)
{
var item = rows[i];
var itemName = item.getElementsByTagName('Name')[0].childNodes[0].nodeValue;
if(itemName == "AccountName")
{
document.getElementById('userName').value = item.getElementsByTagName('Value')[0].childNodes[0].nodeValue;
break;
}
}
}
}
getCurrentUser();
</script>
- javascript 取得当前用户的组和权限(上)
- javascript 取得当前用户的组和权限(下)
- windows 上启用当前进程的用户调试权限
- 取得当前用户的桌面路径。
- python 取得当前用户的主目录
- python 取得当前用户的主目录(sudo)
- Javascript取得当前的农历详细信息
- javaScript取得当前元素的下一个元素
- 取得当前目录的上一级目录
- 检测当前程序权限和用户类型的说明
- javascript 取得当前日期
- 如何取得当前数据的上一条和下一条的ID
- oracle 获得当前用户的权限
- 开启当前用户的sudo权限
- 查看当前用户的对象权限
- SharePoint 2010 获取当前用户的权限
- SharePoint 2010 获取当前用户的权限
- db2 - 查看当前用户的权限
- 获取控制台程序的HWND和HINSTANCE
- 内聚性
- 明年 此时 期待
- GNU flex unistd.h在VC下的编译问题
- 注册表右键单击出现项-与注册表对应关系
- javascript 取得当前用户的组和权限(上)
- .net与java建立WebService再互相调用
- 6410处理隔行CCD图象简单方法
- QQ2010去除迷你首页O(∩_∩)O
- 彻底解决Eclipse 5.2内存溢出:java.lang.OutOfMemoryError: PermGen space
- Adobe RGB和sRGB色彩空间
- c语言字符串处理函数
- windows 下 flex 命令行批处理文件
- 编程语言常规快捷键