jquery ajax回调函数里面的变量如何在函数外部也能访问到?
$.get("files",function(data){varhello=data;});alert(hello);...
$.get( "files",
function(data){
var hello = data;
}
);
alert(hello); 展开
function(data){
var hello = data;
}
);
alert(hello); 展开
4个回答
展开全部
解答:
回调函数里面的变量如何在函数外部也能访问到只需要回调内部变量赋值给全局变量就可以了,但一般这问题都出在没有搞清楚同步和异步的区别,于是虽然赋值给全局变量了,但立即访问全局变量还是没有值的情况。
解决:
注意ajax访问的同步和异步。
使用$.ajax访问,别用get,post等已经封装过的,这类没有$.ajax来的灵活。
$.ajax({url:"/jquery/test1.txt",async:false});//注意这里async,默认为true表示异步,false表示同步。
如果不想使用回调的方式进行后续处理,则可以设置成同步模式。
展开全部
吧hello 设置成全局变量。最好使用$.ajax({async:false})
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把hello设置为全局变量即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
定义一个全局变量
var hello;
$.get( "files",
function(data){
hello = data;
});
alert(hello);
var hello;
$.get( "files",
function(data){
hello = data;
});
alert(hello);
追问
alert(hello); 出现undefined
追答
$.ajax({async:false})
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询