.AjaxPro的使用

简单介绍下它的用法:

一.AjaxPro的使用


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

2.在Web.config中的system.web里面写入以下代码
</configuration>
<system.web>
 
<httpHandlers>
       
<add verb="*" path="*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>
     
</httpHandlers>
</system.web>
<//configuration>

3.在加载事件中,加入
  AjaxPro.Utility.RegisterTypeForAjax(
typeof(类名));

4.写的方法都要用
[AjaxPro.AjaxMethod]开头,然后在写方法

5.调用时必须写清楚
命名空间名.类名.方法,例:WebUI._Default.getData();

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

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

a.同步调用
(
1).拖入html控件button
(
2).双击,自动显示在.aspx的脚本中
(
3).在里面写入你要输入的内容
例:
//------------------同步调用无参-----------
  function Button1_onclick()
  {
         var res
=WebUI._Default.getStr();
         alert(res.value);
  }
 
//------------------同步调用有参------------
function Button2_onclick() //TextBox1为服务器控件
{
    var str
=document.getElementById("<%=TextBox1.ClientID%>").value;
    var res
=WebUI._Default.getStr(str);
    alert(res.value);
}


b.异步调用
(
1).拖入html控件button
(
2).双击,自动显示在.aspx的脚本中
(
3).在里面写入你要输入的内容
例:
//-----------------异步调用无参-----------------
function Button3_onclick() {
    WebUI._Default.getStr(getStrCallBack);
}
function getStrCallBack(res)
{
    alert(res.value);
}
//-----------------异步调用有参-----------------
function Button4_onclick() {
    var str
=document.getElementById("<%=TextBox1.ClientID %>").value;
    WebUI._Default.getString(str,getStringCallBack);
}
function getStringCallBack(res)
{
    alert(res.value);
}

7.调用对象

//对象
[AjaxPro.AjaxMethod]
public Class getClass()
{
       Class cla
= new Class();
       cla.C_Id
= 100;
       cla.C_Name
= "34班";
       cla.Count
= 20;
      
return cla;
}
//------------------同步调用对象-----------
function Button5_onclick() {
    var res
=WebUI._Default.getClass().value;
    alert(
"班级编号:"+res.C_Id+"名称:"+res.C_Name+"人数:"+res.Count);
}
//------------------异步调用对象-----------
function Button6_onclick() {
    WebUI._Default.getClass(getClassCallBack);
}
function getClassCallBack(clas)
{
    var res
=clas.value;
    alert(
"班级编号:"+res.C_Id+"名称:"+res.C_Name+"人数:"+res.Count);
}


8.数据集的使用
//方法
        [AjaxPro.AjaxMethod]
       
public DataSet getInfo()
        {
           
return WebUI.GetDataSet.getList();
        }

//--------------------异步调用数据集--------------
function Button8_onclick() {
    WebUI._Default.getInfo(getDataSetCallBack);
}
function getDataSetCallBack(res)
{
    var dataset
=res.value;
    var strHtml
="";
    strHtml
+='<table  style ="border-collapse:collapse ; border-color:Gray ;"  border="1px">';
    strHtml
+='        <tr>';
    strHtml
+='            <td>学生编号</td>';
    strHtml
+='            <td>名称</td>';
    strHtml
+='            <td>年龄</td>';
    strHtml
+='        </tr>';
   
   
for(var i=0;i<dataset.Tables[0].Rows.length;i++)
    {
        strHtml
+='        <tr>';
        strHtml
+='            <td>'+ dataset.Tables[0].Rows[i].stu_id +'</td>';
        strHtml
+='            <td>'+ dataset.Tables[0].Rows[i].stu_name +'</td>';
        strHtml
+='            <td>'+ dataset.Tables[0].Rows[i].stu_age +'</td>';
        strHtml
+='        </tr>';
    }
    strHtml
+='    </table>';
    thedata.innerHTML
=strHtml;//thedata是一个<div id="thedata"></div>中的thedata
}



9.验证码的使用

//----------------------验证码的使用(必须采用同步调用)----------------------

//验证码的使用
[AjaxPro.AjaxMethod]
public bool ValidCodeData(string code)
{
    
return (HttpContext.Current.Session["CheckCode"].ToString()==code);
}

function Button9_onclick() {
    var code
=document.getElementById("<%=TextBox2.ClientID %>").value;
    var
bool=WebUI._Default.ValidCodeData(code).value;
   
if(bool==true)
    {
        alert(
"ok");
    }
else
    {
        alert(
"no");
    }
}
AjaxPro.dll文件网上很多的,自己下

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章