function get(){
$.get('/get.php', function(data) {
alert('one: ' + data)
return data;
});
}
var test = get();
alert('two:' + test);
在 get.php 中是:
<?php echo "number"; ?>
为什么一个警报显示给我 一:数
但是两个警报告诉我 二:未定义
如何在函数外获取这个值?
最佳答案
$.get
调用是异步的。这意味着您向它传递一个回调(您的 function(data) { ... }
,它会根据调用的结果执行。您不能 return
在该回调内部 - 当它被执行时,您的外部函数(执行 $.get
)已经返回。相反,尝试这样的事情:
// callback will be executed with the response from your GET request
function get(callback){
$.get('/get.php', callback);
}
// Call get with a callback receiving the response
get(function(data) {
alert('two:' + data);
});
这是您在编写 JavaScript 代码时必须习惯的模式。
关于javascript - $.get 并获取值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9310855/