我有以下要求:
我有一个“项目”列的视图组。当前登录的用户只需要扩展他/她所属的项目(我有办法获取用户的项目)。分组项目具有以下形式:
<td nowrap="" class="ms-gb" colspan="100"><img width="0" height="1" alt="" src="/_layouts/images/blank.gif"><a onclick="javascript:ExpCollGroup('1-2_','img_1-2_');return false;" href="javascript:"><img border="0" alt="Expand/Collapse" src="/_layouts/images/plus.gif" id="img_1-2_"></a> <a onclick="javascript:ExpCollGroup('1-2_','img_1-2_');return false;" href="javascript:">Project</a> : <a href="[mysite]&RootFolder=*">Project1</a> <span style="font-weight: lighter">‎(2)</span></td>
<td nowrap="" class="ms-gb" colspan="100"><img width="0" height="1" alt="" src="/_layouts/images/blank.gif"><a onclick="javascript:ExpCollGroup('1-3_','img_1-3_');return false;" href="javascript:"><img border="0" alt="Expand/Collapse" src="/_layouts/images/plus.gif" id="img_1-3_"></a> <a onclick="javascript:ExpCollGroup('1-3_','img_1-3_');return false;" href="javascript:">Project</a> : <a href="[mysite]&RootFolder=*">Project2</a> <span style="font-weight: lighter">‎(1)</span></td>
尝试以下操作但禁用所有项目链接:
$('td:contains(“Project1”)td.ms-gb a')。removeAttr(“onclick”)。click(function(){return false;});
此外,当用户点击他/她无权访问的项目时,我需要抛出一条消息“您无权访问此项目......”。
非常感谢所有帮助!谢谢!
答案 0 :(得分:0)
要禁用指定的项目组linke,请使用此项(例如project1):
$("td:contains('Project1')>a").removeAttr("onclick");
我还没有找到如何在certen组下更改项链接的行为。但是,即使我们能够做到这一点,我们仍然无法预防未经授权的用户直接通过URL访问项目项目。最好的解决方案是停止那些项目权限继承,并仅向那些应该读取或写入项目的人提供访问权限。