我想将数据从 AJAX 处理程序返回到全局变量中。我试过使调用非异步。我遇到的困难是当我创建一个全局变量并引用该全局变量时,该值在 Ajax 请求之外变得未定义。我什至尝试过使用我的成功回调调用一个函数,但没有任何运气。这是它现在的样子。我与之前正在解决的问题进行了通话同步 jQuery ajax success callback function definition
config();
function config()
{
var dataBool;
var db_test;
$.ajax({asyc: false,
url: 'config.php',
dataType: "text",
data:{db_test:1},
type: "POST",
success: dataStuff
});
function dataStuff(data)
{
dataBool = data;
}
}
最佳答案
如果你想让dataBool成为一个全局变量...它需要是一个全局变量,而不是一个局部变量
var dataBool;
config();
function config()
{
var db_test;
$.ajax({url: 'config.php',
dataType: "text",
data:{db_test:1},
type: "POST",
success: dataStuff
});
function dataStuff(data)
{
dataBool = data;
}
}
asyc: false
是不必要的并且拼错了。参数是 async:false
,因此该选项无效,您也不需要它。
关于javascript - 如何使用 JQuery 和 Ajax 写入全局函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19085101/