| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2760 人关注过本帖
标题:用了AJAX之后,timer定时10秒,然后页面就每十秒都执行一次page的事件
只看楼主 加入收藏
ylof1986
Rank: 2
等 级:论坛游民
帖 子:241
专家分:61
注 册:2008-1-6
结帖率:93.94%
收藏
已结贴  问题点数:10 回复次数:9 
用了AJAX之后,timer定时10秒,然后页面就每十秒都执行一次page的事件
怎么搞的那,有些代码我想就执行一次的啊,这下怎么办那,不管是page的init 还是page的load都会每十秒执行一次的啊
搜索更多相关主题的帖子: timer AJAX page 页面 
2010-07-06 09:01
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:3 
也就是说你要每10秒钟刷新一次页面喽?

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2010-07-06 09:20
ylof1986
Rank: 2
等 级:论坛游民
帖 子:241
专家分:61
注 册:2008-1-6
收藏
得分:0 
回复 2楼 冰镇柠檬汁儿
刷新UpdatePanel里面的数据啊,但是又想有一部分初始化的代码只执行一遍就好了,怎么办哦
2010-07-06 09:22
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:0 
“有一部分初始化的代码只执行一遍”,难道你想初始化的代码都应该执行N遍?page_load方法里别忘了加ispostback的判断,这样就执行了一遍。
“刷新UpdatePanel里面的数据”,这个我不是很清楚,因为我用ajax向来自己手写代码,用NET的控件我觉得影响执行效率。

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2010-07-06 09:26
cxwl3sxl
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:495
专家分:129
注 册:2005-11-12
收藏
得分:3 
UpdatePanel post的是整个page,服务器端得page生命周期的所有事件是都会执行的,没得办法避免。除非是你自己在你的code里面判断是不是因为updatepanel而引起的回发

努力,哈哈,总有一天会变成高手~~~~~~因为我相信:没有办不到,只有想不到!http://t..cn/fpress
2010-07-06 10:55
ylof1986
Rank: 2
等 级:论坛游民
帖 子:241
专家分:61
注 册:2008-1-6
收藏
得分:0 
回复 5楼 cxwl3sxl
那怎么判断哪
2010-07-06 16:37
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:3 
aspx中:
程序代码:
<asp:UpdatePanel ID="UpdatePanel1" runat="server">              
    <ContentTemplate>
       
        //这里是要刷新的数据显示的地方。         
          
        <asp:Timer ID="Timer1" runat="server" Enabled="True" Interval="10000" ontick="Timer1_Tick">
        </asp:Timer>
    </ContentTemplate>
</asp:UpdatePanel>

aspx.cs中
protected void Timer1_Tick(object sender, EventArgs e)
{
    QueryData();   //自己写的一个显示部分数据的方法。
}

一个页面中,可以有多个UpdatePanel 进行控制,所有我们可以单独或者多个控制它们中的数据刷新。
当然,你想刷新哪个UpdatePanel,对应的触发服务端的事件便得放到它中间,就像上面的aspx中的代码一样,Timer是触发服务器端的控件,所以必需得放到<asp:UpdatePanel>...</asp:UpdatePanel>中,否则,即使刷新了,也是整个页面,而不是对应的UpdatePanel。

希望对你有用。

[ 本帖最后由 bygg 于 2010-7-6 18:00 编辑 ]

飘过~~
2010-07-06 17:58
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:0 
对我很有帮助,我从来没用过ajax控件

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2010-07-07 09:29
cxwl3sxl
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:495
专家分:129
注 册:2005-11-12
收藏
得分:0 
如果是UpdatePanel引起的回发,在this.Request.Form里面会有一个key叫ScriptManager的字段。

努力,哈哈,总有一天会变成高手~~~~~~因为我相信:没有办不到,只有想不到!http://t..cn/fpress
2010-07-10 11:45
misswang
Rank: 8Rank: 8
来 自:湖北荆州
等 级:贵宾
威 望:15
帖 子:265
专家分:720
注 册:2010-3-11
收藏
得分:0 
先顶下...学习中....

misswp2010@
wangping103@
2010-07-11 10:38
快速回复:用了AJAX之后,timer定时10秒,然后页面就每十秒都执行一次page的事件
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023582 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved