前2天做一个gis项目用到ajax,本来想用到ajaxpro,但有点问题又找不到源代码,就依葫芦画瓢,写了个类似的东东
下载地址:(含简单框架和实例)
/Files/sukyboor/Ajax.rar
使用方法:
1。在web.config的system.web中加入
<!-- AJAX -->
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" />
</httpHandlers>
2 AjaxTest.Br,AjaxTest表示业务处理类
为该类需要在客户端被调用的方法加入Ajax.AjaxMethod()属性
1
using
System;
2
using
Ajax;
3
4
namespace
AjaxTest
5
{
6 /**//// <summary>
7 /// Br 的摘要说明。
8 /// </summary>
9 public class Br
10 {
11
12 //得到表TableName的所得数据,以XML字符串返回
13 [Ajax.AjaxMethod()]
14 public static string ShowMsg()
15 {
16 return "系统调用返回!";
17 }
18
19 //得到表TableName的所得数据,以XML字符串返回
20 [Ajax.AjaxMethod()]
21 public static string GetXmlDataRows(string t,string a,string b)
22 {
23 return string.Format("<?xml version=/"1.0/" encoding=/"utf-8/" ?><doc><t>{0}</t></doc>",t);
24 }
25 }
26}
27
3 在页面中加入
<script src="ajax/common.ashx" type="text/javascript"></script>
<script src="ajax/AjaxScript.ashx?type=AjaxTest.Br,AjaxTest" type="text/javascript"></script>
注意AjaxScript.ashx文件的type就是要被调用的类,只要设置了type,那么该类中所有属性为Ajax.AjaxMethod()的方法在客户端都可以访问。
<
HTML
>
<
HEAD
>
<
script
src
="ajax/common.ashx"
type
="text/javascript"
></
script
>
<
script
src
="ajax/AjaxScript.ashx?type=AjaxTest.Br,AjaxTest"
type
="text/javascript"
></
script
>
<
script
>
//最后一个参数是回调方法。和后台交互完成后触发
Br.GetXmlDataRows('xt_Name_t','a','测试数据',showmsg);
Br.GetXmlDataRows('xt_Name_t','a','测试数据',showmsg);
//回调用方法 s为后台返回值
function showmsg(s){
var doc = new AjaxDom(s);
document.write(doc.selectSingleNode("doc/t").text);
}
//如果无回调方法,系统会等待数据读取。。。
document.write(Br.ShowMsg());
document.write(Br.ShowMsg());
</
script
>
</
HEAD
>
<
body
>
</
body
>
</
HTML
>
这个简单吧,等哪天有空我把数据生存期和一些客户端组件给移植过来,应该就像那么回事了。
http://sukyboor.cnblogs.com/archive/2006/07/21/456616.html