ajax无刷新站内短信发送实例

实现:
1.下载AjaxPro.2.dll控件,将它引用到项目里。

2.修改配置文件web.config:
<httpHandlers>
<add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>
</httpHandlers>

3.在页面中注册AJAX

namespace WebSite.Message
{
    
public partial class Index : System.Web.UI.Page
    {
    
protected void Page_Load(object sender, EventArgs e) 
    { 
      
#region 注册无刷新 
      AjaxPro.Utility.RegisterTypeForAjax(
typeof(Index));//Index为当前页面的类名 
      #endregion 
  } 


 



4.编写前台调用的获取当前用户的新信息的方法

/// <summary> 
/// 查看用户当前的收件箱 
/// </summary> 
/// <returns></returns> 
[AjaxPro.AjaxMethod] 
public string GetNewNote()
{
  
string sqlstr = "select count(0) from [demo] where IsReaded=0";
      
int i = (int)DAL.DbHelperSQL.GetSingle(sqlstr);
      
return i.ToString();
}

 


5.前台页面中通过javascript设置定时函数来执行获取当前用户的收件箱新信息的数量

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="WebSite.Message.Index" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>无标题页</title>
    
<script type="text/javascript">
    setInterval(
"getNewNote()",6000);
    
function getNewNote()
    {
        WebSite.Message.Index.GetNewNote(call_back);
    }
    
function call_back(res)
    {
       document.getElementById(
"tips").innerHTML = res.value;
    }
    
</script>
</head>
<body>
    
<form id="form1" runat="server">
    
<div id="tips">
    
    
</div>
    
</form>
</body>
</html>


 

posted @ 2009-02-03 11:42  jay-c  阅读(320)  评论(0)    收藏  举报