下载地址:(含实例)
/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()属性
1using System;
2using Ajax;
3
4namespace 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
2using Ajax;
3
4namespace 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>
<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>
这个应该够简单了,等哪天有空我把数据生存期和一些客户端组件给移植过来,就像那么回事了。