【发布时间】:2009-04-20 14:17:02
【问题描述】:
我有一个 javascript 函数,它调用一个通用函数来对服务器进行 ajax 调用。我需要从 ajax 调用的回调函数中检索结果(真/假),但我得到的结果始终是“未定义”。
没有我所有逻辑的通用函数的超级简化版本是:
function CallServer(urlController) {
$.ajax({
type: "POST",
url: urlController,
async: false,
data: $("form").serialize(),
success:
function(result) {
if (someLogic)
return true;
else
return false;
},
error:
function(errorThrown) {
return false;
}
});
}
调用它的函数会是这样的:
function Next() {
var result = CallServer("/Signum/TrySave");
if (result == true) {
document.forms[0].submit();
}
}
“结果”变量始终是“未定义”,调试它我可以看到正在执行回调函数的“返回真”行。
对为什么会发生这种情况有任何想法吗?我如何冒泡将回调函数的返回值传递给 CallServer 函数?
谢谢
【问题讨论】:
标签: javascript ajax jquery