有你在真好 的个人博客
AjaxPro.2.dll基本使用
阅读:2372 添加日期:2021/3/22 16:07:19
"

1.1.1在web.config文件中的<system.web>加入以下设置 

 


<httpHandlers>
 <add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>
</httpHandlers>


  3. 创建一个页面Default.aspx

  4. 在Default.aspx.cs文件的Page_Load中注册AJAX可调用的类的名称

protected void Page_Load(object sender, EventArgs e)
{
 AjaxPro.Utility.RegisterTypeForAjax(typeof(_Default));
}


  5. 创建AJAX可调用的方法:

[AjaxPro.AjaxMethod]
public string SetTb(string name)
{
 return name;
}


  注意:[AjaxPro.AjaxMethod]是定义AjaxPro可调用的方法,是必须要注明的 

  6. 前台代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!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 language="javascript" type="text/javascript">
// <!CDATA[

function comit_onclick() 
{
 var name=document.getElementById("tb1").value;
 _Default.SetTb(name,callback);
}
function callback(res)
{
 document.getElementById("tb").value=res.value;
}

// ]]>
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="tb1" runat="server"></asp:TextBox><br />
<input id="comit" type="button" value="Ok" onclick="return comit_onclick()" />
<br /><asp:TextBox ID="tb" runat="server"></asp:TextBox>
</div>
</form>
</body>
</html>


  注意:这里值得注意的地方是 _Default.SetTb(name,callback);这句话是为了调用_Default.aspx.cs后台代码中SetTb这个方法的,如果这个方法没有要传递的参数则指明返回的处理方法是哪一个就OK了,写成_Default.SetTb(callback);

 

2.1.1VS打开项目,在其资源管理器中,右击引用,左击"添加引用"


2.1.2出现如图1_2所示的对话框,点击浏览,找到AjaxPro.dll文件所在的位置,双击AjaxPro.dll,然后点击确定。


2.1.3在资源管理器的引用文件夹下,就可以看到AjaxPro了,说明添加引用成功,

2.2、配置web.config

这一步的作用是保证客户端向"ajaxpro/*.ashx"的请求(POST和GET)都被AjaxPro.AjaxHandlerFactory拦截。

打开web.config文件,在<configuration><system.web>后添加以下代码,

<httpHandlers>

<add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro"/>

</httpHandlers>

2.3、添加服务端方法

2.3.1打开后台代码,在Page_Load方法体内加上如下代码,

 AjaxPro.Utility.RegisterTypeForAjax(typeof(所在类的类名)); 

 

其作用是向客户端输出下面的代码:

<script type="text/javascript" src="/ch33/ajaxpro/core.ashx"></script>

<script type="text/javascript" src="/ch33/ajaxpro/ch33.Verify,ch33.ashx"></script>

2.3.2、添加数字加一的方法,首先在方法前加[AjaxPro.AjaxMethod],然后像写C#方法一样写方法,如图3-2

注意:需要加上[Ajax.AjaxMethod]标识,这样才能够被客户端访问

2.4、添加前台代码

在前台添加JS脚本,调用服务器端方法,如图4-1所示(Try.AjaxTest.Add(num)Try为页面类,即AjaxTest类所在的命名空间,这里是Try;而AjaxTest即为类名,Add为方法名)

2.5、运行程序,检验结果


"
ICP备案号:苏ICP备14035786号-1 苏公网安备 32050502001014号