(function listen(){ var tran = $('.tran'); for(var i=0;i<tran.length;i++){ if($(tran[i]).text()=='正在翻译...'){ //that = $($(tran[i])); $.ajax({ type:'post', url:'/ajax/pstran', async: false, data:{ id:$(tran[i]).attr('href').split('/')[$(tran[i]).attr('href').split('/').length-1], user:'{Yii::app()->session['user']['id']}', }, success:function(msg){ console.log(i); } }); } } })();
ajax 默认是异步状态 post数据到后台,同时代码往下执行,等到success成功后,插入队列,返回数据,可是这时候for循环的i已到最后,因此i是20,若是是同步,则等到回调函数success返回后代码才往下执行,因此console.log(i)里的 才是咱们想获得的数据.ajax