您好,请问在JavaScript里面的回调函数(callback)怎么传参数?具体?

现在有函数如下定义:
function A(a,callback){
....
}

function B(){
....
}

则可以有如下调用

A(a,B);来实现回调。

现在我希望传给B一个参数c,即实现类似于:

A(a,B(c));的效果,各位高手帮帮忙,应该如何实现?

绝地无双
浏览 267回答 3
3回答

慕的地6264312

在Javascript 中,特别是在AJAX中,回调函数常常是一个函数名,没有地方放入参数,如下面的AJAX代码,在成功后将调用回调函数callback,但callback是有参数的,如何把参数传进来呢?var callback = function(p1){//do something}var ajaxSetting = {url: url,timeout:me.timeout,type: method,contentType: "application/json",dataType: "json",cache: false,async: async,data: p_data,success: callback},error: function(p_request, p_status, p_err) {}};解决的办法是利用匿名函数:success: function(result){callback(p1_actual);}其中pa_actual是已知的参数,可以是function类型。

慕容3067478

这是我针对你的问题写的一个简单的例子,你看看:<html><head><title>jsp3</title></head><body bgcolor="#ffffff"><script language="javascript" type="text/javascript">function A(a,callback){var b=callback;alert(a+b);}function B(c){return (-c);}</script><form method="post" action="jsp3.jsp"><br><br><input type="button" name="Submit" value="Submit" onclick="A(4,B(3));"></form></body></html>

婷婷同学_

这是我针对你的问题写的一个简单的例子,你看看:<br>jsp3<br>functionA(a,callback){varb=callback;alert(a+b);}functionB(c){return(-c);}
打开App,查看更多内容
随时随地看视频慕课网APP