正如标题所说,我有一个ajax函数,我用来调用一个函数,从我的mysql db中为js中的变量赋值。成功之后,我可以打印出回显的数据,并且它在控制台中显示得很好。但是,在ajax调用之后调用变量会产生一个空变量。到底是怎么回事?
以下代码:
request = $.ajax({
url: "/fans/get_url_tag",
type: "post", success:function(data){url_tag = data; console.log(url_tag); //prints the correct value},
data: {'fbid': result.id} ,beforeSend: function(data){console.log(data);}
});
//prints nothing
console.log(url_tag)
答案 0 :(得分:1)
听起来范围是错误的。 也许只需在$ .ajax调用之前声明它:
var url_tag;
request = $.ajax({
url: "/fans/get_url_tag",
type: "post", success:function(data){url_tag = data; console.log(url_tag);},
data: {'fbid': result.id} ,beforeSend: function(data){console.log(data);}
});
console.log(url_tag); //Should print the same value
答案 1 :(得分:0)
您需要将console.log
放入回调函数中。