首先从网上下载一个AjaxPro.dll(vs2003),然后把Ajax.dll copy到应用系统bin目录下,在项目中添加引用AjaxPro.dll。随后,找到web.config文件,修改里面的配置: 
第一个Ajax.net程序的实现及心得。 <httpHandlers>
第一个Ajax.net程序的实现及心得。  
<add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro"></add>
第一个Ajax.net程序的实现及心得。  
</httpHandlers>
意思是所有的ajaxpro/*.ashx请求都由Ajax.PageHandlerFactory处理,而不是由默认的System.Web.UI.PageHandlerFactory处理程序工厂来处理。
     接下来我们就开始第一个Ajax.net的初次旅行。
     新建一个项目ajax,然后呢,打开WebForm2.aspx.cs文件,在Page_Load事件里面注册一下AjaxPro
1第一个Ajax.net程序的实现及心得。    private void Page_Load(object sender, System.EventArgs e)
2        }
     下面就进入Ajax的世界了,在WebForm2.aspx.cs里写入下的一个方法
1第一个Ajax.net程序的实现及心得。[AjaxPro.AjaxMethod]
2第一个Ajax.net程序的实现及心得。        public int  add(int a,int b)
3        }
      注意,方法必须是public的,而且方法前必须有[AjaxPro.AjaxMethod]这样才能在客户端掉用这个方法。
然后在WebForm2.aspx的HTML页面中的<head>区域中加入javascript代码来调用服务器端的方法。
 1第一个Ajax.net程序的实现及心得。        <script>
 2第一个Ajax.net程序的实现及心得。    function getadd()
 3>

看上面的javascript代码,当我第一次写着段代码时,费了一番的功夫,当然,不是说不会,而是里面的细节问题
如,在服务器段,我定义的方法add()返回值是int,而如果直接调用也就是说如果把var c=ajax.WebForm2.add(a,b).value;改成var c=ajax.WebForm2.add(a,b)那么在页面上获得的值是[object Object]而非真正想要的结果。所以我总结了一下客户端从服务器端获得的值基本上是object类型的,所以得在后面加上.vlaue.
   string 类型
     int    类型
  DateTime类型
当然了,在以后的学习和开发过程中还会有总结的。下面是完整的代码:

 1

WebForm2.aspx.cs代码:
 1第一个Ajax.net程序的实现及心得。using System;
 2第一个Ajax.net程序的实现及心得。using System.Collections;
 3第一个Ajax.net程序的实现及心得。using System.ComponentModel;
 4第一个Ajax.net程序的实现及心得。using System.Data;
 5第一个Ajax.net程序的实现及心得。using System.Drawing;
 6第一个Ajax.net程序的实现及心得。using System.Web;
 7第一个Ajax.net程序的实现及心得。using System.Web.SessionState;
 8第一个Ajax.net程序的实现及心得。using System.Web.UI;
 9第一个Ajax.net程序的实现及心得。using System.Web.UI.WebControls;
10第一个Ajax.net程序的实现及心得。using System.Web.UI.HtmlControls;
11第一个Ajax.net程序的实现及心得。
12第一个Ajax.net程序的实现及心得。namespace ajax
13

相关文章:

  • 2021-06-21
  • 2022-12-23
  • 2021-06-27
  • 2021-11-02
  • 2022-01-14
  • 2022-03-08
  • 2022-02-16
  • 2021-10-08
猜你喜欢
  • 2022-01-18
  • 2021-08-01
  • 2022-12-23
  • 2021-08-23
  • 2021-11-29
  • 2021-08-14
相关资源
相似解决方案