下面是我正在编写的代码。如您所见,我创建了一个名为“my_string”的变量,默认情况下,我想调用 get_result_data() 函数并将所有返回数据存储在变量“my_string”上。然后,一旦用户单击 $('#button')
,我想显示存储的数据。但问题是,我总是收到不明错误。
function get_result_data(){
$.ajax({
type: 'POST',
url: 'ajax/get_result.php'
}).done(function(data){
return data;
});
}
var my_string = get_result_data();
$('#button').click(function(){
alert(my_string);
});
最佳答案
您的get_result_data
函数不会返回任何内容,这就是您返回未定义的原因。相反,尝试在 ajax 回调中设置 my_string
:
var my_string;
function get_result_data(){
$.ajax({
type: 'POST',
url: 'ajax/get_result.php'
}).done(function(data){
my_string = data;
});
}
$('#button').click(function(){
// MY_STRING MIGHT BE UNDEFINED
alert(my_string);
});
也许是更好的方法:
var response = $.ajax({
type: 'POST',
url: 'ajax/get_result.php'
});
$('#button').click(function(){
response.done(function (data) {
alert(data);
});
});
关于javascript - 获取函数内ajax调用的返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20778768/