Javascript函数没有返回结果

时间:2012-08-14 15:47:19

标签: javascript jquery

我有一个函数没有按照我希望的方式返回值。该函数的作用是获取从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);结果是未定义的。也许是因为它们不在列表或数组中?感谢帮助,谢谢。

2 个答案:

答案 0 :(得分:4)

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

答案 1 :(得分:1)

正如KayKay指出的那样,异步方法永远不会返回任何数据。但是,如果你真的必须返回,你可以将'async'设置为false。