皮皮的老窝
来自实践,用于实践。
博客园
首页
新随笔
联系
订阅
管理
posts - 29, comments - 67, trackbacks - 10
用javascript自定义SharePoint文档库/列表项菜单
我们在SharePoint中自定义菜单,通常通过带CustomAction 的Feature来实现,比如隐藏一个菜单:
<
HideCustomAction
>
GroupId = "Text"
HideActionId = "Text"
Id = "Text"
Location = "Text">
</
HideCustomAction
>
自定义一个菜单:
<
CustomAction
Id
="Extend"
Location
="Microsoft.SharePoint.Administration.ApplicationManagement"
Sequence
="10"
Title
="Extend or upgrade virtual server"
Description
=""
>
<
UrlAction
Url
="vslist.aspx?NextPage=extendvsoption.aspx&Show=NeedExtend&Show=NeedUpgrade"
/>
</
CustomAction
>
具体知识请参考SDK或者参考网上的相关文章。
但是。。。。这种方法不是都管用的,比如我要改变文档库或者列表的ListItem的菜单中的某项或者增加删除一个菜单等等,通过这种方法是没有效果的……
这个时候,我们通过javascript来实现就非常容易了,如果您看过core.js的代码就会发现,MS已经给我们预留了自定义的接口来实现我们自己的菜单定义了,MS想的就是周到哇,嘿嘿……
core.js在路径
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS\下的1033[英文]或者2052[中文]下,我们找到添加文档库/列表菜单的function
看到了吧我们可以自定义实现Custom_AddDocLibMenuItems(文档库) / Custom_AddListMenuItems(列表)来添加我们自己的菜单,具体做法是。。。
1)在我们的页面中加入一个WebPart-内容编辑器部件,然后修改部件属性,最好将部件设置为隐藏的:
然后点击“源编辑器...”,输入我们的自定义javascript脚本来实现我们自己的菜单:
<
script language
=
"
javascript
"
>
function
Custom_AddDocLibMenuItems(m, ctx)
{
strDisplayText
=
"
我的菜单
"
;
var
rootMenu
=
CASubM(m,strDisplayText,
""
,
""
,
500
);
strDisplayText
=
"
我的菜单还是我的菜单
"
;
strAction
=
"
STSNavigate('http://www.cnblogs.com')
"
;
strImagePath
=
ctx.imagesPath
+
"
oisweb.gif
"
;
menuOption
=
CAMOpt(rootMenu,strDisplayText,strAction,strImagePath);
menuOption.id
=
"
ID_MySubMenu
"
;
return
false
;
}
</
script
>
function里怎么个写法可以参照core.js的写法:) 最后的return false;说明继续执行系统的代码,如果return true的话。。。那整个菜单就一个你自己的菜单项啦。写完后保存,然后退出编辑模式来瞧瞧:
如果要去掉某个菜单,比如WorkFlow之类,我比较笨,用了个笨方法,把他内置的
AddDocLibMenuItems中的脚本copy过来,把要去掉的菜单项给注释掉,然后最后来个return true;呵呵
个人习惯:
posted on 2007-10-29 23:44
皮皮@北京
阅读(986)
评论(10)
编辑
收藏
所属分类:
Office
FeedBack:
#1楼
2007-10-30 13:02 |
A A
牛啊.....牛人就是牛啊。..
羡慕ing.......
回复
引用
查看
#2楼
2007-11-03 09:47 |
刘帝勇
不错,学习了。明白思路了。吼吼
回复
引用
查看
#3楼
2008-06-18 14:22 |
[重庆]黑恼火 [未注册用户]
牛!收藏了,谢谢!
回复
引用
#4楼
2008-07-07 09:19 |
cdboy
收藏一个
回复
引用
查看
#5楼
2008-07-27 20:44 |
ZuoYi [未注册用户]
很早就看到这篇帖子了,但是没有去做一个!
现在要用了,借鉴一下!
顶一个!
回复
引用
#6楼
2008-08-22 17:47 |
rrr [未注册用户]
按照版主的发试了,我是从版主:“1)在我们的页面中加入一个WebPart-内容编辑器部件,然后修改部件属性,最好将部件设置为隐藏的:〉〉〉〉〉”这开始做的 但是没有在“新建、上载、操作、设置”上看到新增的“我的菜单”这项;
发生这种情况的可能原因是什么?
回复
引用
#7楼
2008-08-22 18:25 |
rrr [未注册用户]
<HideCustomAction>
GroupId = "Text"
HideActionId = "Text"
Id = "Text"
Location = "Text">
</HideCustomAction>
<CustomAction
Id="Extend"
Location="Microsoft.SharePoint.Administration.ApplicationManagement"
Sequence="10"
Title="Extend or upgrade virtual server"
Description="">
<UrlAction Url="vslist.aspx?NextPage=extendvsoption.aspx&Show=NeedExtend&Show=NeedUpgrade"/>
</CustomAction>
版主:这些代码怎么用阿?放在那?
回复
引用
#8楼
2008-10-02 15:39 |
皇上爱累了
谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢,帮了大忙了!!
回复
引用
查看
#9楼
2008-10-14 10:06 |
lxrc [未注册用户]
如果我加的存在ID的值的变化,如何办?
回复
引用
新用户注册
刷新评论列表
标题
姓名
主页
Email
(博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
网站首页
新闻频道
社区
小组
博问
网摘
闪存
找找看
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
该文被作者在 2007-10-29 23:53 编辑过
"五向定位"职业成长路线公开课(上海、南京、大连)
Google站内搜索
相关文章:
[你必须知道的.NET] 第十六回:深入浅出关键字---using全接触
.NET初学者架构设计指南(三)设计模式
javascript小技巧
用javascript操作xml
不安装 Office2003 的情况下 进行Excel 开发
Office Account 2008 中的ORM框架问题
如果国内大力打击盗版,免费软件是否会成为主流。
SharePoint Service 和 SharePoint Server 的区别
相关链接:
所属分类的其他文章:
用ddwrt:URLLookup在列表自定义页面中显示查阅项的链接
SharePoint Permissions Matrix
记录中心设置
如何给SPListItem中DateTime类型的Field赋空值
服务器场环境下Sharepoint Server与Reporting Services整合
SharePoint 列表的甘特图分组依据问题
发一个取AD用户属性的自定义字段
SharePoint中的权限定义参照
发布一个图片库轮显WebPart (源码)
用javascript自定义SharePoint文档库/列表项菜单
最新IT新闻:
Silverlight 2正式版SDK可以下载
Silverlight对Flash 微软打垮Adobe
IBM扩大研究规模 在上海成立研究院
eWeek评Google八大“20%项目”
微软终于发布Silverlight 2正式版
<
2007年10月
>
日
一
二
三
四
五
六
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
承接各种
ASP.NET/SharePoint
项目!
(继续)
MSN/EMAIL:
QQ: 41722764
(请注明验证信息)
搜索
常用链接
我的随笔
我的空间
我的短信
我的评论
更多链接
我的参与
我的新闻
最新评论
我的标签
留言簿
(8)
给我留言
查看留言
随笔分类
.NET(4)
K2(3)
Office(20)
唧唧歪歪(5)
Google搜索
最新随笔
1. 解决:K2.net Studio 遇到问题需要关闭
2. K2 BlackPearl中日志记录的设置与扩展
3. The Sharepoint 2007 Song
4. WorkflowManagementHostServer Not Hosted!
5. 用ddwrt:URLLookup在列表自定义页面中显示查阅项的链接
6. SharePoint Permissions Matrix
7. 记录中心设置
8. 如何给SPListItem中DateTime类型的Field赋空值
9. 巨爆笑~
10. 这才是强劲的CRM [转载]
最新评论
1. re: 用javascript自定义SharePoint文档库/列表项菜单
如果我加的存在ID的值的变化,如何办?
--lxrc
2. re: 用javascript自定义SharePoint文档库/列表项菜单
谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢,帮了大忙了!!
--皇上爱累了
3. re: 用javascript自定义SharePoint文档库/列表项菜单
<HideCustomAction> GroupId = "Text" HideActionId = "Text" Id = "...
--rrr
4. re: 用javascript自定义SharePoint文档库/列表项菜单
按照版主的发试了,我是从版主:“1)在我们的页面中加入一个WebPart-内容编辑器部件,然后修改部件属性,最好将部件设置为隐藏的:〉〉〉〉〉”这开始做的 但是没有在“新建、上载、操作、设置”上看到新...
--rrr
阅读排行榜
1. 发布一个图片库轮显WebPart(1088)
2. 用javascript自定义SharePoint文档库/列表项菜单(986)
3. 自定义MOSS网站的masterpage(963)
4. 服务器场环境下Sharepoint Server与Reporting Services整合(770)
5. SharePoint中的权限定义参照(680)
评论排行榜
1. 发布一个图片库轮显WebPart(12)
2. 用javascript自定义SharePoint文档库/列表项菜单(10)
3. MOSS的ItemUpdated执行了10次,您碰到了吗?(7)
4. InfoPath 保存时自动生成文件名(6)
5. 发布一个图片库轮显WebPart (源码)(5)