谢 谢 收 藏 http://www.qqread.com/ajax/u396579.html
更多内容请看Ajax技术专题、Ajax技术应用开发专题,或进入讨论组讨论。
用ajax做自动提醒功能(asp.net)。
记得以前做自动提醒都是使用iframe框架,在一个框架里不停的刷新.检测是否有新的消息.但在使用类似于MSN的提醒中,弹出的提示框信息都是在iframe框架中显示.即当iframe框架不可见时,提示信息也就看不到.并且在整个页面效果上还的考虑一些浏览器对框架的支持.使用ajax技术,分两部分来说明.首先是后台的处理.这里我是在网上下载的ajax dll文件(schwarz-interactive.de, Michael Schwarz,版本5.7.22.2),减少自己写ajax common的时间.
后台代码开起来是相对的简单.对ajax.dll的引用(webconfig中需要添加对ashx的处理).调用页面的加载(page_load)中增加一行代码注册,我这使用页面为index.aspx(class为index)
Ajax.Utility.RegisterTypeForAjax(GetType(index))
然后增加一个需要通知的函数.下面是一个邮件信息通知的函数.string类型返回邮件的信息.
<Ajax.AjaxMethod()> Public Function GetdealMessageShow(ByVal v As String) As String
Dim userid As Integer
Try
userid = CType(v, Integer) REM v为个人ID信息
Catch ex As Exception
Exit Function
End Try
Dim value As String = datacls.Email_TopDealinfo(userid) REM 数据处理放在datacls中
Return value
End Function
需要说明的是必须加上<Ajax.AjaxMethod()>并且使用public 声明,本人曾采用friend.会提示出错.
这样后台的程序完成了.现在在前台的页面中加入javascript调用即可.
function CheckIsNewSystemInfo()
{
var v=document.getElementById('Hiddenuserid').innerHTML ;
index.GetdealMessageShow(v,GetdealMessageShow_callback);
//index与后台的RegisterTypeForAjax类型一致.
}
function GetdealMessageShow_callback(res)
{
var s=res.value;
if(s!='' && s!=null)
{
var strTmp=s.split("|");
document.getElementById('PopupWin1titleEl').innerHTML ='::::::系统提示::::::'; document.getElementById('PopupWin1aCnt').innerHTML='<span id=popupwin1_emailid>'+strTmp[0]+'</span>'+strTmp[1];
//strTmp[0]为ID,主要是用于关闭提示窗时去掉已提醒的信息,strTmp[1]为内容
PopupWin1espopup_winLoad();
}
}
在页面的最底部加入一段javascript ,让它每5秒中自动执行一次读取服务器信息.
window.setInterval("CheckIsNewSystemInfo()",5000);
最后加上提示框代码.网上比较多.这里是类似于MSN的右下角弹出提示框.
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- Ajax技术专题 (556篇文章)
- Ajax技术应用开发 (556篇文章)
- AJAX应用之注册用户即时检测 (14次浏览)
- AJAX应用之草稿自动保存 (7次浏览)
- 为ASP.NET MVC框架添加AJAX支持 (4次浏览)
- AJAX通用类:AJAXRequest v0.3 (3次浏览)
- AJAX开发简略 (3次浏览)
- ajax的缺点 (3次浏览)
- ajax代理程序自动判断字符编码 (3次浏览)
- AJAX打造博客无刷新搜索 (2次浏览)
- 不用组件实现Ajax效果 (0次浏览)
- XMLHttpRequest对象如何铸就AJAX辉煌 (0次浏览)



