【发布时间】:2011-10-05 01:55:00
【问题描述】:
这就是我所拥有的:
function populateElement(arg1) {
getData(arg1);
}
function getData(query) {
var url = "http://foo" + query + "&callback=processData";
// do stuff
}
function processData(results) {
callbackForGetData(results);
}
function callbackForGetData(result) {
// process data
}
我想向函数 populateElement 传递另外两个参数,如下所示:
function populateElement(arg1, arg2, arg3) {
getData(arg1);
}
并在 callbackForGetData 中提供 arg2、arg3
function callbackForGetData(result) {
// process data
// use arg2, arg3 here
}
我应该怎么做?
【问题讨论】:
-
为什么不直接调用getData呢?
-
Appending multiple parameters/arguments to a jsonp callback function 的可能副本。我在回答这个问题时提供了一个解决方案的大纲。
-
@Adam:问题在于
callbackForGetData被作为 JSONP 回调调用,因此 OP 无法控制它的调用方式。 -
亩太短 - 首先,这不是转贴。我是 JS 和回调的新手,我真的不明白您所说的“无法控制它的调用方式”是什么意思。我可以更改 callbackForGetData。
标签: javascript callback parameter-passing