2

我有一个函数没有按照我想要的方式返回值。该函数所做的是获取从 PHP 页面(PHP 页面具有 SQL 查询)回显的信息并返回它。这里是代码:

function getValues(var1,var2) {
  $.post("http://url/to/file.php", {var1:var1,var2:var2}, function(data) {
    values = data.split(',');
    return values[0];
  });
}

我知道 PHP 文件正在工作,因为如果我要编写alert(data);或者alert(values);我可以看到那里的值。例如,当我调用该函数时,var result = getValues(5,6);结果是未定义的。也许是因为它们不在列表或数组中?感谢帮助,谢谢。

4

2 回答 2

4

因为 AJAX 调用是异步的(AJAX 的第一个 A),因此它执行一个回调函数,它不返回结果。

于 2012-08-14T15:48:53.997 回答
1

正如 KayKay 所指出的,异步方法永远不会返回任何数据。然而,如果你真的必须得到那个回报,你可以将'async'设置为false。

于 2012-08-14T15:50:25.083 回答