最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解閉包解決jQuery中AJAX的外部變量問(wèn)題

 更新時(shí)間:2017年02月22日 15:18:25   投稿:lqh  
這篇文章主要介紹了詳解閉包解決jQuery中AJAX的外部變量問(wèn)題的相關(guān)資料,需要的朋友可以參考下

詳解閉包解決jQuery中AJAX的外部變量問(wèn)題

在AJAX中,我們經(jīng)常都要使用外部變量,經(jīng)常會(huì)多次使用,如下代碼

 function getCarInfo(){
      for(var i=0;i<4;i++){

        var carId = $("#carList0"+i+" #carId").val();
        var request = { 
          city: city,
          carId: carId
        };

        $.ajax({
           url:"enquiry",
          type:'post',
          data:request,
          //async: false,
          success:function(data){
            //alert(data);
            var strArr = data.split("#");
            $("#carList0"+i+" #distributorId").val(strArr[0]);
            $("#carList0"+i+" #font16").html(strArr[strArr.length-1]);
          }
        });

      }
    }

我期待的是按順序alert(1) alert(2) alert(3) alert(4),但是實(shí)際上三次都是alert(4)

這均是由于AJAX異步導(dǎo)致的問(wèn)題,設(shè)置同步(async: false,)就可以解決這個(gè)問(wèn)題,但是隨之而來(lái)的是,效率減低很多。這時(shí)可以輕松使用閉包解決問(wèn)題:

    function getCarInfo(){
      for(var i=0;i<4;i++){
      ((function(i){
        var carId = $("#carList0"+i+" #carId").val();
        var request = { 
          city: city,
          carId: carId
        };

        $.ajax({
           url:"enquiry",
          type:'post',
          data:request,
          //async: false,
          success:function(data){
            //alert(data);
            var strArr = data.split("#");
            $("#carList0"+i+" #distributorId").val(strArr[0]);
            $("#carList0"+i+" #font16").html(strArr[strArr.length-1]);
          }
        });
        }(i)));
      }
    }

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

最新評(píng)論

黄浦区| 富顺县| 阿拉善右旗| 云南省| 南投市| 云霄县| 北流市| 宽甸| 如皋市| 什邡市| 株洲县| 武隆县| 如东县| 鹤壁市| 鄄城县| 莱州市| 民丰县| 杂多县| 临沧市| 屯昌县| 进贤县| 扎鲁特旗| 务川| 宁陕县| 兴文县| 惠东县| 舒城县| 石屏县| 莱芜市| 松原市| 蒲江县| 银川市| 隆化县| 荥经县| 仁布县| 茌平县| 城市| 杭锦后旗| 巩义市| 昌平区| 屏东县|