Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript $。获取并获取值_Javascript_Jquery - Fatal编程技术网

Javascript $。获取并获取值

Javascript $。获取并获取值,javascript,jquery,Javascript,Jquery,在get.php中: function get(){ $.get('/get.php', function(data) { alert('one: ' + data) return data; }); } var test = get(); alert('two:' + test); 为什么一个警报显示给我 一:数字 但有两个警觉的人告诉我 二:未定义 如何在函数外部获取此值?美元.get调用是异步的。这意味着您要

在get.php中:

 function get(){
      $.get('/get.php', function(data) {
          alert('one: ' + data)
          return data;
      });
  }

  var test = get();
  alert('two:' + test);
为什么一个警报显示给我 一:数字

但有两个警觉的人告诉我 二:未定义

如何在函数外部获取此值?

美元.get调用是异步的。这意味着您要将回调传递给functiondata{…},该回调将使用调用的结果执行。您不能从该回调内部返回-执行回调时,执行$.get的外部函数已经返回。相反,请尝试以下方法:

<?php echo "number"; ?>
这是您在编写javascript代码时必须习惯的模式。

$.get调用是异步的。这意味着您要将回调传递给functiondata{…},该回调将使用调用的结果执行。您不能从该回调内部返回-执行回调时,执行$.get的外部函数已经返回。相反,请尝试以下方法:

<?php echo "number"; ?>

这是您在编写javascript代码时必须习惯的模式。

您的返回数据是从ajax匿名函数返回的,而不是从get函数返回的。

您的返回数据是从ajax匿名函数返回的,而不是从get函数返回的。

这是因为调用此语句时,在执行$get回调之前,函数get已返回。请记住,ajax请求是异步的

执行步骤是什么:

呼叫获取 已启动带有$.get的Ajax请求 得到回报 ajax请求结束,并执行$.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);
});

这是因为调用此语句时,函数get在执行$.get回调之前已经返回。请记住,ajax请求是异步的

执行步骤是什么:

呼叫获取 已启动带有$.get的Ajax请求 得到回报 ajax请求结束,并执行$.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);
});