AjaxPro也就是AJAX.NET (Professional),它是ASP.NET平台上著名的AJAX框架
1. 首先在Web项目的Bin目录下添加对AjaxPro.2.dll的引用。
2. 在web.config中的<system.web>下加入以下配置:
<httpHandlers> <add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro.2"/></httpHandlers>
3. 如果要在Default.aspx页面中使用AjaxPro.2.dll。则只需要在Default.aspx.cs的Page_Load事件中进行注册,只需要下面这句代码就可以
using System.Text;
using AjaxPro;
using System.Text.RegularExpressions;
using EdulifeBg.myDB;
namespace Edulife.school.kangshiedu
{
/// <summary>
/// classcenter 的摘要说明。
/// </summary>
[AjaxPro.AjaxNamespace("classcenter")]
public class classcenter : System.Web.UI.Page
{
protected System.Web.UI.HtmlControls.HtmlGenericControl dvpage;
protected System.Web.UI.HtmlControls.HtmlGenericControl info;
protected System.Web.UI.WebControls.Label lblCourses;
public int intCourseId=0;
private void Page_Load(object sender, System.EventArgs e)
{
AjaxPro.Utility.RegisterTypeForAjax(this.GetType());
}
[AjaxMethod]
public string getClass(int cur, int CourseId ,string SchoolId)
{}
[AjaxMethod]
public string getPagger(string SchoolId, int courseid, int cur)
{}
}
}
4. 最后,我们在前台脚本中调用已经注册的回调方法,调用方式如下
<script type="text/javascript">
function fenye(nowpage)
{
document.getElementById("info").innerHTML = classcenter.getClass(nowpage,courseid,"kangshiedu").value;
document.getElementById("dvpage").innerHTML= classcenter.getPagger("kangshiedu",courseid,nowpage).value;
}
</script>
总结:AjaxPro.2.dll就是为了实现前台调用后台的方法。在web.config中配置一下,在前台所在页面的后台Page_Load事件中注册回调类:
AjaxPro.Utility.RegisterTypeForAjax(typeof(AjaxProCallMethod),this.Page)。
在回调类中定义回调方法,回调方法上一定要加上这样一句。
[AjaxPro.AjaxMethod]
回调类为public,不用为静态类(在这里的方法是不能取到或设置前台服务器控件的值)。剩下的就是前台调用对应后台Page_Load事件中注册过的回调类的回调方法,调用方式是"类名.方法".
1. 首先在Web项目的Bin目录下添加对AjaxPro.2.dll的引用。
2. 在web.config中的<system.web>下加入以下配置:
<httpHandlers> <add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro.2"/></httpHandlers>
3. 如果要在Default.aspx页面中使用AjaxPro.2.dll。则只需要在Default.aspx.cs的Page_Load事件中进行注册,只需要下面这句代码就可以
using System.Text;
using AjaxPro;
using System.Text.RegularExpressions;
using EdulifeBg.myDB;
namespace Edulife.school.kangshiedu
{
/// <summary>
/// classcenter 的摘要说明。
/// </summary>
[AjaxPro.AjaxNamespace("classcenter")]
public class classcenter : System.Web.UI.Page
{
protected System.Web.UI.HtmlControls.HtmlGenericControl dvpage;
protected System.Web.UI.HtmlControls.HtmlGenericControl info;
protected System.Web.UI.WebControls.Label lblCourses;
public int intCourseId=0;
private void Page_Load(object sender, System.EventArgs e)
{
AjaxPro.Utility.RegisterTypeForAjax(this.GetType());
}
[AjaxMethod]
public string getClass(int cur, int CourseId ,string SchoolId)
{}
[AjaxMethod]
public string getPagger(string SchoolId, int courseid, int cur)
{}
}
}
4. 最后,我们在前台脚本中调用已经注册的回调方法,调用方式如下
<script type="text/javascript">
function fenye(nowpage)
{
document.getElementById("info").innerHTML = classcenter.getClass(nowpage,courseid,"kangshiedu").value;
document.getElementById("dvpage").innerHTML= classcenter.getPagger("kangshiedu",courseid,nowpage).value;
}
</script>
总结:AjaxPro.2.dll就是为了实现前台调用后台的方法。在web.config中配置一下,在前台所在页面的后台Page_Load事件中注册回调类:
AjaxPro.Utility.RegisterTypeForAjax(typeof(AjaxProCallMethod),this.Page)。
在回调类中定义回调方法,回调方法上一定要加上这样一句。
[AjaxPro.AjaxMethod]
回调类为public,不用为静态类(在这里的方法是不能取到或设置前台服务器控件的值)。剩下的就是前台调用对应后台Page_Load事件中注册过的回调类的回调方法,调用方式是"类名.方法".