.net中AjaxPro的简单使用


 

1.在项目中添加引用,浏览找到AjaxPro.2.dll文件

 

2.Web.config中写入以下代码

 

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

 

 

3.在加载事件中,加入

AjaxPro.Utility.RegisterTypeForAjax(typeof(类名));

protected  void Page_Load( object sender, EventArgs e) 

{
        AjaxPro.Utility.RegisterTypeForAjax(typeof(AjaxProExample));//这的AjaxProExample是指页面

 


 4.写的方法都要用

[AjaxPro.AjaxMethod]开头,然后在写方法

 

5.调用时必须写清楚

命名空间名.类名.方法,例:AjaxProExample.Add(); 

 

6.调用可分两中方法(同步调用,异步调用

        同步调用 : 

  // 在后台写的无参方法
    [AjaxPro.AjaxMethod]
     public  string getStr()
    {
         return  " hello my friends ";
    }

     // 在后台写的有参方法
    [AjaxPro.AjaxMethod]
     public  string getString( string str)
    {
         return str +  "  Say: hello my friends ";

    }  


前台代码: 

 function SayHello() {
             var len = arguments.length;  // 重载
             if (len ==  0) {
                 var res = AjaxProExample.getStr().value;//同步调用无参
                alert(res);                
            }  else  if (len ==  1) {

                 if (arguments[ 0] ==  "") {
                    alert( " 内容不能为空 ");
                }  else {
                     var res = AjaxProExample.getString(arguments[ 0]).value;//同步调用有参
                    alert(res);
                }               

            }

        }

 

     异步调用:

 

       // 后台代码 

   [AjaxPro.AjaxMethod]
    public int Add(int a, int b)
    {
        return a + b;
    }

    //前台代码
       function AddNum() {
            var a = document.getElementById("txt1").value;
            var b = document.getElementById("txt2").value;

            if (a == "" || b == "") {
                alert("请输入合法的数值");
                return;
            }

            //var res = AjaxProExample.Add(a, b).value;        //调用后台代码后直接返回数据,不用显示执行回调函数(同步调用)
            var res = AjaxProExample.Add(a, b, disp_callback); //调用后台代码后通过回调函数来显示返回的数据(异步调用)

        }

        function disp_callback(response) {
            alert("累计求和: " + response.value);

        }  


 7.调用对象 


 
public class PersonInfo
{
    private int _Age = 0;
    private string _Name = "";
    private string _Sex = "";
    public int Age
    {
        get { return _Age; }
        set { _Age = value; }
    }    
    public string Name
    {
        get { return _Name; }
        set { _Name = value; }
    }   
    public string Sex
    {
        get { return _Sex; }
        set { _Sex = value; }
    }
public PersonInfo(string name,int age,string sex)
{
        Name = name;
        Age = age;
        Sex = sex;
}

 

    
//后台
[AjaxPro.AjaxMethod]
    public PersonInfo getClass()
    {
        PersonInfo p = new PersonInfo("张三"25"");
        return p;
    }

//------------------同步调用对象-----------
        function Button5_onclick() {
            var res = AjaxProExample.getClass().value;
            alert("姓名:" + res.Name + "年龄:" + res.Age + "性别:" + res.Sex);
        }
        //------------------异步调用对象-----------
        function Button6_onclick() {
            AjaxProExample.getClass(getClassCallBack);
        }
        function getClassCallBack(response) {
            var res = response.value;
            alert("姓名:" + res.Name + " 年龄:" + res.Age + " 性别:" + res.Sex);

        }  


 

 8.数据集的使用//后台代码

[AjaxPro.AjaxMethod]
     public DataTable getData()
    {

        DataTable dt =  new DataTable();
        dt.Columns.Add( " Name ");
        dt.Columns.Add( " Telphone ");

        DataRow dr = dt.NewRow();
        dr[ " Name "] =  " 李四 ";
        dr[ " Telphone "] =  " 189******** ";
        dt.Rows.Add(dr);

        dr = dt.NewRow();
        dr[ " Name "] =  " 王五 ";
        dr[ " Telphone "] =  " 189********* ";
        dt.Rows.Add(dr);

        dr = dt.NewRow();
        dr[ " Name "] =  " 张三 ";
        dr[ " Telphone "] =  " 189********* ";
        dt.Rows.Add(dr);

         return dt;

    }

// 前台
function Button7_onclick() {

             var dataTable = AjaxProExample.getData().value;

             var strHtml =  "";
            strHtml +=  ' <table style ="border-collapse:collapse ; border-color:Gray ;" border="1px"> ';
            strHtml +=  '  <tr> ';
            strHtml +=  '  <td>姓名</td> ';
            strHtml +=  '  <td>手机号</td> ';
            strHtml +=  '  </tr> ';
             for ( var i =  0; i < dataTable.Rows.length; i++) {
                strHtml +=  '  <tr> ';
                strHtml +=  '  <td> ' + dataTable.Rows[i].Name +  ' </td> ';
                strHtml +=  '  <td> ' + dataTable.Rows[i].Telphone +  ' </td> ';
                strHtml +=  '  </tr> ';
            }
            strHtml +=  '  </table> ';

             var divDataTable = document.getElementById( " divDataTable "); // 一个div控件
            divDataTable.innerHTML = strHtml;  //

        }

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM