zoukankan      html  css  js  c++  java
  • 隐藏自定义列表中的某些栏

    在csdn聊天记录http://chat.csdn.net/chathistory/ViewStatements.aspx?TopicId=134中找到的这篇文章,觉得非常好,翻译,记下来。

    原文地址:http://msd2d.com/Content/Tip_viewitem_03NoAuth.aspx?section=Sharepoint&id=82AAB2F0-B356-453A-A5FB-00EF39E6562E

    我最近遇到客户提出的很有趣的一个关于Windows SharePoint Services的问题。要求我快速解答并且不能增加任何的代码量。下面是我巧妙的(个人认为)解决方案。
    在我们使用由WSS构建的网站时,往往会遇到这样的需求。某些用户有权访问一个特定的站点,并且可以进入其下面的某个自定义列表。我们希望这个用户可以查看所有的栏,但是只能更新列表项里其中的某一部分栏的内容。我们可以如下设置:

    1、首先进入一个SharePoint自定义列表,并且我们假设您已经添加了一些列表项
    2、在我们添加完一个新项后,点击该项的编辑菜单,将进入编辑页面EditForm.aspx
    3、在 FrontPage 2003中打开这一页,然后利用文件另存为保存一份副本。可以起名叫EditAdminForm.aspx。这个版本是允许完全访问列表项的,所以一定要保存好。
    4、回到编辑页面EditForm.aspx ,重新在FrontPage中打开。
    5、选择"Main"Web部件区域中的那个ListFormWebPart,右键,选则“自定义SharePoint列表表单”
    6、在每个在 您希望隐藏的栏里,点击对应行中的标签单元格。在FrontPage的导航条上,您可以看到选择HTML标记的地方,点击最近的<TR>标记,整行将被选中。
    7、在下拉列表中选择“编辑标记”
    8、在出现的快速标记编辑器中将<TR>标记改为<TR style=’”display:none”>后保存。这个操作将把这一行隐藏起来。
    9、在每个要隐藏的行上重复上面的步骤。
    10、在EditForm.aspx页的某处放置一个隐形对象。这里我用了一个无边框的透明的文本框放到页面左侧。为其指定下面的URL地址:“javascript:location.href=’EditAdminForm.aspx’+location.search”
    这段脚本将传递相应列表项的ID给EditAdminForm页面。管理员可以通过培训被告知从哪里找到隐藏的完整栏的访问地址。而一般用户仅仅能看到显示出来的栏。最重要的是我们并没有更改SharePoint默认的保存链接就做到了这一点。

    进一步发挥,我们使用同样的方法也可以对NewForm.aspx和DispForm.apx做处理,就能实现更多功能了。

  • 相关阅读:
    NYOJ 10 skiing DFS+DP
    51nod 1270 数组的最大代价
    HDU 4635 Strongly connected
    HDU 4612 Warm up
    POJ 3177 Redundant Paths
    HDU 1629 迷宫城堡
    uva 796
    uva 315
    POJ 3180 The Cow Prom
    POJ 1236 Network of Schools
  • 原文地址:https://www.cnblogs.com/Sunmoonfire/p/535126.html
Copyright © 2011-2022 走看看