日期:2014-05-18  浏览次数:20350 次

100分,求在vs.net2005中 框架中文件 FreshMessage.aspx 用 ajax 实现定期自我刷新,判断是否有新的短信息,但是让用户感觉不到网页在刷新…!详情请进

  用户登录到办公自动化OA界面后,如果以后有人给他发信件,这时系统就会弹出一个对话框,告诉此用户,您有新的短信息,我的实现方法是在办公自动化界面中加了一个很小的 frame,然后,让这个 frame中的文件 FreshMessage.aspx 20秒钟刷新一次 ,判断是否有新的短信息,但是这样的话,一刷新的时候,页面会闪一下,而且还有有疙瘩一下的声音,对用户体验不好。

----------------------------------------------------

我刚接触 asp.net 的 AJAX 技术,我知道, ajax 好像应该能实现上述功能,但还让用户感觉不到网页在刷新,我用的是 vs.net2005 ,我对 ajax 不太熟悉,只是在网上找到一些资料,我想请教一下各位高人,如何能实现用 ajax 实现动态刷新
FreshMessage.aspx 页,当有新短信时弹出窗口告知用户您有新的短信息,但是让用户感觉不到网页在刷新。


-------------


假设这是 FreshMessage.aspx文件:

<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
</asp:UpdatePanel>


...然后要怎么做呢 ??? 对各位高人的帮忙我感激不尽!!








------解决方案--------------------
在<asp:UpdatePanel />里面再放一个<asp:Timer />,就那么简单。
------解决方案--------------------
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Timer ID="Timer1" runat="server" Interval="20000" OnTick="Timer1_Tick">
</asp:Timer>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
----------------------
protected void Timer1_Tick(object sender, EventArgs e)
{
Label1.Text = "现在时间: " +DateTime.Now.ToLongTimeString();

}
------------------------------
如上面的例子每20秒就会刷新一次时间.................