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 メソッドはデータを返しません。ただし、本当にそのリターンが必要な場合は、「async」を false に設定できます。

于 2012-08-14T15:50:25.083 に答える