大家好,又见面了,我是你们的朋友全栈君。
1.先把Ajax.dll添加引用到项目中。在项目上右击,菜单上有个[添加引用]……
2.修改Web.config。在 <system.web> 元素中添加以下代码。这里的Ajax.dll和Ajaxpro.dll引用方法是不一样的,一定要注意 :
<configuration>
<system.web>
<httpHandlers>
<!– Ajax.dll的配置文件写法为,我下载到的是这个 –>
<add verb=”POST,GET” path=”ajax/*.ashx” type=”Ajax.PageHandlerFactory, Ajax” />
<!– AjaxPro.dll的配置文件写法为,根据你下载到的DLL文件选择不同的配置语句–>
<add verb=”*” path=”ajaxpro/*.ashx” type=”AjaxPro.AjaxHandlerFactory, AjaxPro”/>
</httpHandlers>
</system.web>
</configuration>
3.对AjaxPro用到的页Page_Load事件中进行运行时注册。如:
protected void Page_Load(object sender, EventArgs e)
{
Ajax.Utility.RegisterTypeForAjax(typeof(_Default));//是Ajax.dll的
AjaxPro.Utility.RegisterTypeForAjax(typeof(_Default));//Ajaxpro.dll的
}
//这的_Default是指页面类的类名,就是这个页面的名字。
如是放在命名空间,则需要写上完整的命名空间(如:namespaces._Default)
4.创建服务器端方法
[Ajax.AjaxMethod]//这句一定要有,如果你是Ajaxpro.dll就写成
[AjaxPro.AjaxMethod]
public string getValue(int a,int b)
{
//该方法我们将实现从客户端传入两个数,在服务器端相加计算后返回到客户端。这里可以写在原来的页后台中也可以单独写一个类。
return Convert.ToString(a+b);//这里返回的就是前台得到的值,反正参数已经进CS文件了,想怎么操作就怎么操作,包括读库都可以。
}
5.客户端调用。
<%@ Page language=”c#” Codebehind=”WebPage1.aspx.cs” AutoEventWireup=”false” Inherits=”Web.WebPage1″ %>
<script language=”javascript”>
function getValue()
{
//这里如果是AjaxPor.dll就加Web._Default.getValue,如果是Ajax.dll就不用加命名空间如下
_Default.getValue(1,2,getGroups_callback);//该处即调用服务器端的_Default.getValue方法。
//_Default就是写getValue的那个类,如果写在本页CS里就是WebPage1.getValue,1和2是参数。
//这在里边getGroups_callback指定的是个回调函数,以接受服务器端处理完后返回客户端结果。
}
//这个方法用户接受并处理服务器端返回的结果。
function getGroups_callback(response)
{
var dt=response.value;//这个值就是最终传回来的值,想怎么用就怎么用,反正回前台了。
document.getElementById(“Div_1”).innerHTML=dt;
}
</script>
<body>
<div id=”Div_1″> </div>
<button οnclick=getValue()>开始 </botton>
</body>
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/158710.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...