`

ajax回调函数参数传递

阅读更多

属性方法是可以带参数:

function ClassX(name) {
	this.name = name;
	ClassX.prototype.show = function (param) {
		alert(this.name + " " + param);
	};
}
var o = new ClassX("name");
o.show("param");//name param 

 
但是,上面是虽然是直接在函数签名中定义了参考,如果不是自己调用o.show('param')时,而是通过其他函数回调传入时,就不一定好使了,因为别人在调用此方法时不一定给你传入此参,比如在使用ajax时

request.onreadystatechange=function(param){...}

request.onreadystatechange=callBack;function callBack(param){...}

时就不好使了,因为此时ajax根本就没有给你传递param参数,正确做法形如:

//request.onreadystatechange = orgEval;//错误作法

//request.onreadystatechange = function (request, pOrgName) {//错误作法
//	orgEval(request, pOrgName);
//};

//...
request.onreadystatechange = function () {//正确作法
	orgEval(request, pOrgName);//在匿名函数内调用回调实现,并直接传入参数,这里用到了JavaScript的闭包性质 
};
//...

function orgEval(req, orgName){
	//...
}

  这样通过在匿名函数内调用回调实现函数,并且直接传入参数即可。

分享到:
评论
2 楼 junJZ_2008 2009-11-11  
实质上这里只是用到了JavaScript闭包性质
1 楼 mida 2009-11-11  
谢谢!
我以前写的代码尽量不带参数,可是如果用全局变量就很不效率了!现在轻松了!

相关推荐

    ajax回调函数参数传递正确方法

    ajax回调函数参数传递正确方法,很多朋友习惯的写错了,这里简单的小结下。

    Javascript基于AJAX回调函数传递参数实例分析

    本文实例讲述了Javascript基于AJAX回调函数传递参数的方法。分享给大家供大家参考,具体如下: 前面介绍了《javascript实现html页面之间参数传递的四种方法》,这里针对ajax参数传递做一分析。 在Javascript 中,...

    解决ajax回调函数返回的字符串乱码问题

    ServletActionContext.getResponse().setContentType(“text/json;... 您可能感兴趣的文章:jQuery Ajax Post 回调函数不执行问题的解决方法Javascript基于AJAX回调函数传递参数实例分析ajax回调函数中使用$(this)取不到

    jQuery Tips 为AJAX回调函数传递额外参数的方法

    具体到这个例子,我们希望button1和button2...ajax load1</button> </div> ”callbackdemo2″> <button id=”button2″>ajax load2</button> </div> ”callbackdemo3″ class=”log”></div>

    JS回调函数的应用简单实例

    JS的回调函数很简单,看代码: 在a.js中 var myback = null; function load(obj){ myback = obj; } function save(){ // 后台请求 $.ajax.post...... // 调用回调函数 myback(); } 在b.js中进行调用 // 就是把要...

    AJAX 请求完成时执行函数。Ajax 事件。

    AJAX 请求完成时执行函数。Ajax 事件。 XMLHttpRequest 对象和设置作为参数传递给回调函数。

    IE浏览器与FF浏览器关于Ajax传递参数值为中文时的区别实例分析

    前面介绍了《Javascript基于AJAX回调函数传递参数》,这里主要来分析一下ajax传递中文参数过程中针对不同浏览器的乱码处理方法。 Ajax传递参数为中文时出现乱码,我遇到的情况是: 1.我的数据库连接 编码为 GB2312,...

    JQuery AJAX参数详解补充附示例

    也就是说,让回调函数内 this 指向这个对象(如果不设定这个参数,那么 this 就指向调用本次 AJAX 请求时传递的 options 参数)。比如指定一个 DOM 元素作为 context 参数,这样就设置了 success 回调函数的上下文为...

    Ajax异步提交数据返回值的换行问题实例分析

    前面分析介绍了《Javascript基于AJAX回调函数传递参数》及《IE浏览器与FF浏览器关于Ajax传递参数值为中文时的区别》,学习了ajax回调函数传参与针对不同浏览器处理中文乱码问题的方法。这里就来分析一下ajax异步提交...

    艾恩Ajax无刷新上传(ASP)最简单的调用方法

    fn:上传过程的回调函数,传递的参数为文件信息数组;设置本参数后inputCtrl参数将失效 举例说明: showUpload(null,'files','',999,null); 文本框显示在中间,返回值显示在ID为files的文本框里面,上传目录为默认值,...

    在jquery中的ajax方法怎样通过JSONP进行远程调用

    dataType:返回的数据类型 jsonp:传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback) jsonpCallback:自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写”...

    jQuery 1.6 API 中文版

    也就是说,让回调函数内this指向这个对象(如果不设定这个参数,那么this就指向调用本次AJAX请求时传递的options参数)。比如指定一个DOM元素作为context参数,这样就设置了success回调函数的上下文为这个DOM元素。...

    javaWeb实现自动补全

    success:function(data){//成功的回调函数 data是服务器返回的数据 //alert(data); $("#aa").html(data);//innerHTML 给span赋值 }, error:function(){//失败的回调函数 alert("有误"); ...

    AJAXCALL

    handleResponse:回调函数,doc 为AJAX返回的文档;param:附加参数(isCache:是否需要缓存,默认不缓存;isXML:是否返回XML文档,默认HTML;method:发送方式,默认GET;attach:扩展参数,可以传递自定义的值,...

    jquery中的ajax方法怎样通过JSONP进行远程调用

    dataType:返回的数据类型 jsonp:传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback) jsonpCallback:自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写”...

    Ajax的特性及乱码问题

    ajax的全称是asynchronous javascript and XML ,它是异步的js和XML。它是局部刷新,异步操作。 大家都知道ajax是单线程的,而且本身是同步的,但是单线程为什么可以异步...回调函数就是把函数A当做参数传递给函数B,

    jquery电子文档chm

    如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息返回 responseXML 或 responseText,并作为回调函数参数传递,可用值: "xml": 返回 XML 文档,可用 jQuery 处理。 "html": 返回纯文本 HTML 信息;包含 script ...

Global site tag (gtag.js) - Google Analytics