为了账号安全,请及时绑定邮箱和手机立即绑定

js ajax 请求问题。

js ajax 请求问题。

明月笑刀无情 2019-03-19 17:13:01
在项目中,通过 ajax 请求后台数据,并做数据处理。最后将处理好的数据返回。代码形式如下:function funOne(){    var htmlStr = '';    $.get(href,{},function(r){        var data = eval('(' + r + ')');        $.each(data,function(k,v){            /*    在该区域做相应的数据处理 */            htmlStr += '<div>' + v + '</div>';        })    })    return htmlStr;}以上是代码的逻辑。问题出现在,ajax 请求内部的运算还没结束,已经返回了结果,所以函数调用的结果是空的。该问题如何解决?尝试过用 while ,但是直接太多蹦掉了。
查看完整描述

3 回答

?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

function funOne() {

    var htmlStr = '';

    return $.get(href, {}).then(function (r) {

        var data = eval('(' + r + ')');

        $.each(data, function (k, v) {

            /*    在该区域做相应的数据处理 */

            htmlStr += '<div>' + v + '</div>';

        })

        return htmlStr;

    })

}


funOne().then(function(htmlStr){

    console.log(htmlStr)

})


查看完整回答
反对 回复 2019-03-25
?
jeck猫

TA贡献1909条经验 获得超7个赞

写一写


 var getData = new Promise(function (resolve, reject) {


      $.get(href, {}).then(function (r) {

      

        if (r) {

        var data = JSON.parse(r);

          resolve(data);

        } else {

          reject(err);

        }

      })

    })


    getData.then(function (data) {

      // 处理data

    }).catch((err)=>{console.log(err})


查看完整回答
反对 回复 2019-03-25
  • 3 回答
  • 0 关注
  • 475 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号