我认为简而言之它的好处就是可以在javascript里调用后台的方法。
下面介绍简要步骤:
1. 将ajax.dll引用到网站里。
2. 配置web.config文件。
<system.web>
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax"/>
</httpHandlers>
</system.web>
如果是AjaxPro.dll则写成:
<add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro"/>
3. 在Page_Load()中填写代码
4. 在后台创建方法,在方法上注明[Ajax.AjaxMethod]
具体代码如下:
后台文件:
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//_Default是这里的大类名,网页是Default.aspx在
//它的cs文件里的类是_Default
Ajax.Utility.RegisterTypeForAjax(typeof(_Default));
}
[Ajax.AjaxMethod]
public string gets()
{
return "hello";
}
}
前台文件:
<head runat="server">
<title>无标题页</title>
<script type="text/javascript">
function show2()
{
//_Default.gets()这是后台的方法
var mes=_Default.gets();
alert(mes.value);
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input type="button" value="click" οnclick="show2();" />
</div>
</form>
</body>
到这里就介绍完了。在用AjaxPro.dll文件时,在web.Config和Page_Load中的代码可能会有些不同,不过都是大同小异了。
注意:
我们始终还要明确的是,我们用的始终是Ajax技术,因而我们并没有办法在后台的gets()中直接设置前台的某个div里的数据,我们只能通过它来传一个字符串,并且在前台我们接收到的是一个object要想显示成字符串,还要使用它的value属性。