一.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文件网上很多的,自己下,如果找不到呢,给我发个留言,我发你邮箱

二,直接调用: javascript中:<%=后台方法%>  function says()     {         alert("<%=Say()%>");     }     function del()     {          alert("<%=DeleteByID(8)%>");//DeleteByID(8)后台方法名     }

三,采用ICallbackEventHandler回调

/**//*  * 对ICallbackEventHandler接口进行声明,要在客户端调用服务端代码而不回发,必须声明该接口并且实现它的两个方法:  * RaiseCallbackEvent()、GetCallbackResult()  * RaiseCallbackEvent()的参数是从前台传过来的,根据传来的参数执行不同的代码并将结果用GetCallbackResult()返回前台 */

//必须声明System.Web.UI.ICallbackEventHandler接口 public partial class _Default : System.Web.UI.Page, System.Web.UI.ICallbackEventHandler {     //定义一个回调的返回值     private string Result;     //定义两个变量,用来接收页面传过来到操作数     private string Num1;     private string Num2;     protected void Page_Load(object sender, EventArgs e)     {               }

/**//// <summary>     /// 该方法是回调执行的方法,根据参数在这个方法中处理回调的内容,该方法没有返回值     /// </summary>     /// <param name="eventArgument">此参数是从客户端传过来的</param>     public void RaiseCallbackEvent(string eventArgument)     {         //eventArgumeng 为javascript从客户端传递的参数,本例传过来三个参数用“/”分割将每个参数取出存入数组         string[] PagParams = eventArgument.Split('/');          Num1 = PagParams[1];          Num2 = PagParams[2];         //根据第一个参数(所选的操作符),调用不同的执行函数         switch (PagParams[0])         {             case "0":                  Result = add(); break;             case "1":                  Result = sub(); break;             case "2":                  Result = multi(); break;             case "3":                  Result = division(); break;          }      }          /**//// <summary>     /// 该方法是返回回调的结果给客户端     /// </summary>     /// <returns></returns>     public string GetCallbackResult()     {         return Result;      }

//一下四个函数是通过RaiseCallbackEvent方法,调用的回调要执行操作的函数     private string add()     {         double addResult = double.Parse(Num1) + double.Parse(Num2);         return addResult.ToString();      }

private string sub()     {         double addResult = double.Parse(Num1) - double.Parse(Num2);         return addResult.ToString();      }

private string multi()     {         double addResult = double.Parse(Num1) * double.Parse(Num2);         return addResult.ToString();      }

private string division()     {         double addresult = double.Parse(Num1) / double.Parse(Num2);         return addresult.ToString();      } }

ajaxPro用法的更多相关文章

  1. (转)ajax.dll,ajaxpro.dll的区别和用法

    ASP.NET AjaxPro的应用 1.首先下载AjaxPro组件.并将AjaxPro.dll引用到网站(或项目). 2.修改Web.config.在 <system.web> 元素中添 ...

  2. AjaxPro 的基本用法

    通过 Ajax可以直接访问后台的代码 实现的步骤: 一 ,添加 引用 AjaxPro.2.dll 文件 二 配置配置文件 <httpHandlers> <add verb=" ...

  3. 关于AjaxPro的用法

    1.添加引用AjaxPro.2.dll到项目中 2.添加webconfig iis6添加 在<system.web>中添加: <httpHandlers> <add ve ...

  4. AjaxPro使用说明

    转自:http://www.cnblogs.com/lexus/archive/2007/11/29/977281.html 目录 AjaxPro使用说明    1 目录    2 修改历史纪录    ...

  5. AjaxPro.dll,asp.net 前台js调用后台方法(无刷新)

    1.什么是Ajax Ajax是异步Javascript和XML(Asynchronous JavaScript and XML)的英文缩写."Ajax"这个名词的发明人是Jesse ...

  6. AjaxPro使用说明文档

    ajaxpro下载地址 AjaxPro使用说明     1 目录     2 修改历史纪录     3 1.什么是Ajax     4 2.为什么使用Ajax     4 3.Ajax应用场景     ...

  7. EditText 基本用法

    title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...

  8. jquery插件的用法之cookie 插件

    一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...

  9. Java中的Socket的用法

                                   Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...

随机推荐

  1. Windows phone常用控件之Button

    Button类:表示一个响应 ButtonBase.Click 事件的 Windows 按钮控件. 继承层次结构: 命名空间:    System.Windows.Controls ClickMode ...

  2. Linux权限体系总结

    总结 1.  LINUX9位权限及rwx字符的作用.对应的数字及对应的用户和用户组图解. 2.  rwx对文件来说代表什么意思. 3.  rwx对目录来说代表什么意思. 4.  企业生产环境目录设置权 ...

  3. DevExpress GridControl 中下拉框联动效果的实现(及支持文本框录入情况)

    先解释一下标题: grid中的某一列默认为文本框,根据需要动态的变更为下拉框,且支持动态变更数据源 需求是这样的: 有一些参数(A),这些参数又分别对应另外的参数(B),所以,先把A作为一列,B根据A ...

  4. favicon.ico的使用方法

    favicon.ico怎么来,就自己决定了. 虽说是放在网站根目录下就行了, 但最好是放在网站images目录下,方便统一管理. 然后在head.tpl.php 中的<head></ ...

  5. js插件动态加载js、css解决方案

    最近因为工作需要做了一个js自动导入的插件,一开始很天真的以为动态创建个script添加到head中就ok了,试了之后才发现了问题,就是如果同时引入了多个js文件,而且后一个文件中用到了前一个文件中的 ...

  6. 2016030203 - 首次将内容推送到github中

    参考网址:http://www.cnblogs.com/plinx/archive/2013/04/08/3009159.html 和当你在你的github上创建repository后的提示信息如下 ...

  7. 金山网络2014春季Android实习生招聘-成都站-笔试第二题

    一个文件名为input.txt的文件当中,每一行都有一个单词,要求统计单词出现的频率,并且按照从小到大出现次数打印,次数相同的按照首字母顺序排序. package jinshanwangluo.exa ...

  8. 检测目标程序ELF bit是32还是64

    android操作系统在5.0之后加入了对64位程序的支持,同时兼容运行32位的进程 android的进程绝大部分是zygote父进程fork出来的子进程 zygote进程fork出来的进程是32位进 ...

  9. 自己挖坑自己跳 之JsonMappingException: (was java.lang.NullPointerException) (through reference chain:)

    在Web项目中,我们经常会设计一些与界面相对应的JavaBean作为Entity,而为了兼容前台传入的空值,有些字段我们会用包装类型而不是基本类型.可是往往我的Entity已经设计完成,很多时候我们会 ...

  10. struts中如何将前台的值能在action中获取到

    如何获取值----三种方式(属性驱动,对象驱动,模型驱动)  A:属性驱动 必须生成get,set方法  B:对象驱动 给对象也必须生成get,set方法  c模型驱动 模型驱动需要action去实现 ...