Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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
Php 如何将Ajax Success函数变量调用到其他函数中_Php_Jquery_Html - Fatal编程技术网

Php 如何将Ajax Success函数变量调用到其他函数中

Php 如何将Ajax Success函数变量调用到其他函数中,php,jquery,html,Php,Jquery,Html,如何将Ajax成功函数变量调用到其他函数中,请查看代码 var global_data; $.ajax({ type: "post", url: "login.php", success: function (result) { console.log(result); global_data = result; tick(global_data);

如何将Ajax成功函数变量调用到其他函数中,请查看代码

var global_data;

    $.ajax({
        type: "post",
        url: "login.php",
        success: function (result) {
            console.log(result);
            global_data =   result;
            tick(global_data);

        }
    });

function tick(global_data) {
        $.toast({

        text: '30 days club',
        icon: '',
        loader: false,        
        loaderBg: '#9EC600',  
        allowToastClose: true,
        showHideTransition: 'fade'
        })
    initMap();
    console.log ("Jerry"+global_data);
    setTimeout(tick, random(20, 24) * 1000);
}

这是代码,请看一看,在控制台中对函数tick(全局_数据)进行所有更改后,仍然没有定义

success:function(result){tick(result);
及以后的
function tick(global_data){
AJAX调用是异步的,因此您需要正确使用回调模式。请参阅我标记的重复项,以了解如何执行。您还应该删除
async:false
,因为这是非常糟糕的做法。传递函数参数@mplungjan中的值您的意思是说我必须使用函数tick(全局_数据)在success:function(result)内部。您有
setTimeout(tick,random(20,24)*1000);
-它没有传递全局数据。您似乎毕竟需要全局数据作为全局变量存在。因此Nikos毕竟没有错。您现在需要从函数调用中删除它:
success:function(result){console.log(result);global_data=result;tick();}
然后使用
函数tick(){if(global_data){…process…}设置超时(tick,random(20,24)*1000);}