【发布时间】:2011-05-20 04:17:45
【问题描述】:
考虑:
function ajaxCall(url, callback) {
$.ajax({
type: "GET",
url: url,
success: function (data) { // <-- fail point: where does the returned data go, now?
// do stuff with data
if ( callback ) {
var ret = callback();
if ( ret !== undefined ) {
return ret;
}
}
}
});
}
function fooBar() {
return ajaxCall('some/url', function () {
// do stuff
return some_value;
}
}
对,所以基本上,我想保留请求的异步性,这样浏览器就不会挂起,但最终仍然会返回一个值......这是一个简化的例子,尽管我甚至可以简化它更多。
事实上,我看到的唯一障碍是$.ajax 与其success: 匿名函数之间的转换。
哼。
【问题讨论】:
-
等等,这甚至不是有效的 JavaScript...
-
是的,对不起。
$.ajax未能从我的脑海中传递到屏幕上。 -
啊,我明白了。想必是复制粘贴错误。 :)
标签: javascript jquery asynchronous return anonymous