首页 新闻 会员 周边

一个页面,多个body的问题

0
悬赏园豆:10 [已解决问题] 解决于 2010-06-23 17:01

一个页面中用到了自定义控件,自定义控件中有body元素,并有onload事件。页面的body元素也有onload事件。但当运行页面时,发现自定义控件中的onload事件并没有触发;如果页面中没有onload事件,自定义控件中的onload事件会触发。请各位大虾解释这是什么原因机理,并有没有什么办法让两个onload事件都触发。

忽然明白的主页 忽然明白 | 初学一级 | 园豆:80
提问于:2010-06-12 15:33
< >
分享
最佳答案
0

一个页面不能有多个body,你的控件应该写错了吧,ascx里没有body的话,添加onload可以用JS

<script type="text/javascript">

  if (window.onload) {

    var fn = window.onload;

    window.onload = function() {

      fn.apply(this, arguments);

      //你的代码

    };

  }

  else {

    window.onload = function() { //你的代码 };

  }

</script>

收获园豆:10
Gray Zhang | 专家六级 |园豆:17610 | 2010-06-12 16:24
非常感谢。
忽然明白 | 园豆:80 (初学一级) | 2010-06-13 09:18
其他回答(3)
0

用户控件吧?

用户控件件可以用onload,但是ascx中的html不要存在body,以免冲突。

Astar | 园豆:40805 (高人七级) | 2010-06-12 15:38
div中没有onload事件,如果ascx中没有body,那怎么添加onload事件。
支持(0) 反对(0) 忽然明白 | 园豆:80 (初学一级) | 2010-06-12 16:05
@忽然明白:是可以的,按照楼上的方法。
支持(0) 反对(0) Astar | 园豆:40805 (高人七级) | 2010-06-12 17:07
试了,是可以,也很谢谢你。
支持(0) 反对(0) 忽然明白 | 园豆:80 (初学一级) | 2010-06-13 09:18
0

自定控件 怎么会有 body 标签的????

肯定弄错了!

老虞 | 园豆:99 (初学一级) | 2010-06-12 18:00
0

建议先去看一下asp.net中的页面生成过程,及事件顺序。李天平的书中详细介绍过

牛牛博客 | 园豆:305 (菜鸟二级) | 2010-06-17 13:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册