AJAX与callback的区别

原创 2011年01月07日 13:59:00

Ajax 可以在客户端回调服务器方法, callback 也可以, Ajax callback 的区别在于以下两点:
一。 callback 只能返回 string 类型,而 ajax 可以返回其它类型,如 dataset ,还可以是你自己定义的类型。
二。 ajax 的逻辑要比 callbcak 简单一些,
callback
分为下面几步:
1)
在服务器端注册客户端脚本
   string callbackRef = Page.ClientScript.GetCallbackEventReference(this, "param", "handleResultFromServer", "context");
//handleResultFromServer
是服务器处理完后返回参数到的那个客户端函数的函数名
    string callbackScript = "function CallTheServer(param, context)" + "{ " + callbackRef + "} ;";
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "CallTheServer", callbackScript, true);
2)
客户端调用上面的函数 CallTheServer 传递参数到服务器端
3)
在服务器接收参数并处理
4)
服务器端返回 string 类型参数给客户端
5)
客户端接收参数并处理
ajax
分下面几步:
1)
在服务器端注册客户端脚本
   Ajax.Utility.RegisterTypeForAjax(typeof(PAGECLASS));//PAGECLASS
是页面的类名

或者也可以直接在客户端手工加上脚本:
<script language="javascript" src="ajax/common.ashx"></script>
<script language="javascript" src="ajax/NAMESPACE.PAGECLASS,ASSEMBLYNAME.ashx"></script>
2)
客户端直接调用服务器端方法(但比该方法多一个参数,就是服务器处理完后返回参数到的那个客户端函数的函数名)
3)
服务器端方法返回对象给客户端
4)
客户端接收并处理
尤其是在一个页面要处理几个回调的时候, ajax 会更方便一些。

封装Ajax请求,callback函数参数分析

/** * 封装Ajax函数 * 功能:发送一个Ajax请求,并且可以执行回调函数 * @param url *            发送请求的地址 * @param params * ...
  • ShangQuan2012
  • ShangQuan2012
  • 2016年08月12日 15:11
  • 3116

Ajax的回调函数(callback)

Ajax中的回滚函数(利用PHP+JS实现) 很多和我一样的初学者,总是搞不懂什么是回滚函数。我经过了几天的学习将自己的理解记录在这里。 一、为什么使用回滚函数? 首先我们应该明白我们为什么要用回滚函...
  • wuye_lh
  • wuye_lh
  • 2017年08月03日 02:09
  • 2359

Ajax里应用回调函数(callback)

var menuId = $("ul.nav").first().attr("id"); var request = $.ajax({  url: "script.php",  typ...
  • yongshuai185
  • yongshuai185
  • 2017年03月20日 18:16
  • 1278

android AQuery框架执行回调 AjaxCallback<?>

android AQuery框架发网络请求时会通过一个回调方法将获取的数据返回
  • yangbo437993234
  • yangbo437993234
  • 2014年07月14日 00:41
  • 2117

Ajax异步回调函数(callback)

ajax请求确实是异步的,不过这请求是由浏览器新开一个线程请求,当请求的状态变更时,如果先前已设置回调,这异步线程就产生状态变更事件放到 JavaScript引擎的处理队列中等待处理。见:http:/...
  • limuzi13
  • limuzi13
  • 2016年12月14日 11:50
  • 12487

jsonp和callback的使用

query跨域获得Json 这两天用 Jquery 跨域取数据的时候,经常碰到 invalid label 这个错误,十分的郁闷,老是取不到服务器端发送回来的 json 值, 一般...
  • linli1991
  • linli1991
  • 2017年06月11日 19:36
  • 5486

json跨域和ajax callback函数

最近做的一些东西都涉及到跨域访问的问题。我觉得使用ajax访问url的时候,通常返回的数据都会出现在success里,然后再success里写上自己的逻辑。结果今天遇到了一个问题。在chrome中de...
  • gaofly89
  • gaofly89
  • 2014年03月19日 14:49
  • 2980

Ajax的回调函数(callback)

Ajax中的回滚函数(利用PHP+JS实现) 很多和我一样的初学者,总是搞不懂什么是回滚函数。我经过了几天的学习将自己的理解记录在这里。 一、为什么使用回滚函数? 首先我们应该明白我们为什么要用回滚函...
  • wuye_lh
  • wuye_lh
  • 2017年08月03日 02:09
  • 2359

自定义jQuery 跨域请求 callback 函数名

项目中关于ajax jsonp的使用, 出现了问题:可以成功获得请求结果,但没有执行success方法 总算搞定了,记录一下  function TestAjax()  {     $....
  • longxingzhiwen
  • longxingzhiwen
  • 2017年02月18日 10:57
  • 3489

Ajax异步回调函数(callback)

ajax请求确实是异步的,不过这请求是由浏览器新开一个线程请求,当请求的状态变更时,如果先前已设置回调,这异步线程就产生状态变更事件放到 JavaScript引擎的处理队列中等待处理。见:http:/...
  • limuzi13
  • limuzi13
  • 2016年12月14日 11:50
  • 12487
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:AJAX与callback的区别
举报原因:
原因补充:

(最多只允许输入30个字)