加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

用ajax获取数据return的结果为undefined

发布时间:2020-12-16 01:50:21 所属栏目:百科 来源:网络整理
导读:代码如下: function get_football_bottom_live($,match_id) { span style="white-space:pre"/spanvar json_data; $.ajax({ url: appSetting.get_constant("domain") + appSetting.get_constant("get_api_post_data"),type: 'POST',datatype: 'json',data: {

代码如下:

function get_football_bottom_live($,match_id) {
<span style="white-space:pre">	</span>var json_data;
        $.ajax({
            url: appSetting.get_constant("domain") + appSetting.get_constant("get_api_post_data"),type: 'POST',datatype: 'json',data: {'cmd': 'football_match_list','match_ids': match_id},success: function (data) {
                 json_data = data;
            }
        })
<span style="white-space:pre">	</span>return json_data;
    }
返回的结果为undefined

为什么呢?

因为ajax是异步请求,意思是当我调用的时候,它就马上执行返回结果,还没有结束就给我返回了结果,所以当然是undefined

因为架构中用到了requirejs所以我打算把另外的JS文件中的方法引用到这里,但是发现又错误了,好像requirejs不能够互相引用

最后的解决方案是在另外一个需要数据的JS文件中调用这个JS文件的方法,并且传递一个需要用数据的方法到这个方法在success中处理数据

大意如下:

function get_football_bottom_live($,fn,match_id) {
        $.ajax({
            url: appSetting.get_constant("domain") + appSetting.get_constant("get_api_post_data"),success: function (data) {
                 fn(data);
            }
        })
    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读