问大家一个关于$.ajax的问题
发布于 11 年前 作者 ringtail 3671 次浏览 最后一次编辑是 8 年前

我现在遇到这样的而一个问题,先看下代码: var name; $.ajax({ url:"", success:function(){ //赋值; }); 但是ajax是异步的,也就是如果这时name赋值是暂时参与赋值的,如果用return来做的话,那就和同步没有区别了 如果不想把过多的逻辑写到回调之中,大家有没有好的办法,希望大牛们指导一下。

6 回复

这是一样的呀,还是要在这个位置赋值,如果取用的话,还是未定义的赋值啊

在ajax的回调函数里,赋值后再执行相关的动作。比如显示 name 什么的。

你的意思是动作的逻辑全都写在回调函数中?还是赋值然后跳出回调,但是这种方式是无法获得参数数据的,因为ajax是异步的

@ringtail 回调函数也可以有参数传进去。我一般用 bind(context)给回调函数一个 scope。传入的参数(在 context 这个对象里)在回调函数里用 this 来取得。另一个办法是用成员函数,也是用 this 来取得参数。最后一个笨点的办法是用全局变量。

哦?好像有点意思了,我去试试,谢谢啦!

哦?好像有点意思了,我去试试,谢谢啦

回到顶部