很多时候我们需要改变MOSS自带的一些按钮的默认事件,比如我自己订制的显示页面点击连接进入到了列表的显示页面DispForm,不过浏览后点击关闭按钮呢他会自动跳转到MOSS的列表的界面,这很不好,所以这种情况我们需要定制MOSS的默认行为了,我自己认为最简单的方式莫过于用脚本来做了。

拿DispForm的关闭按钮来说,首先到DispForm,然后添加一个内容编辑器web部件

然后在源编辑器放入我们的脚本

1<script type="text/javascript">
2function resetCloseButton(){
3 var buttons = document.getElementsByTagName("INPUT");
4 var count = buttons.length;
5 for(var i = 0; i < count; i++){
6 var button = buttons[i];
7 if(button.type.toLowerCase() != "button"){
8 continue;
9        }
10 var id = button.id.toLowerCase();
11 var l = id.indexOf("goback");
12 if(l != -1 && l == id.length - 6){
13            button.onclick = function(){
14                alert('Reset OK');
15 return false;
16            }
17        }
18    }
19}
20_spBodyOnLoadFunctionNames.push("resetCloseButton");
21</script>

写的挺啰嗦,呵呵。有好的框架来整则非常容易了,比如JQuery,用$来找INPUT然后规定id$="GoBack"就应该找到了,然后用.each来做自己的事。。
_spBodyOnLoadFunctionNames是MOSS提供的脚本,用于页面的onload执行,我们用_spBodyOnLoadFunctionNames.push把自己的东西塞进去就ok了。

Update: DispForm页面启用编辑的方法:在URL上加一个参数 &DisplayMode=Design就可以了

http://www.cnblogs.com/ycc/archive/2009/03/16/1413059.html

posted on 2009-06-24 11:14  季博望  阅读(419)  评论(0编辑  收藏  举报