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

代码如下:

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);
            }
        })
    }

相关文章

JS原生Ajax操作(XMLHttpRequest) GET请求 POST请求 兼容性问题 利用iframe模拟ajax 实现表单提交的返回...
AJAX 每日更新前端基础,如果觉得不错,点个star吧 &#128515; https://github.com/WindrunnerMax/E...
踩坑Axios提交form表单几种格式 前后端分离的开发前后端, 前端使用的vue,后端的安全模块使用的SpringSe...
很早就听闻ajax的名声,但是却一直不知道怎么用,今天自己捣鼓了一下,竟然会用了,哈哈哈哈。 为了防止...
需要在服务器上进行哈 jquery的ajax方法: // jquery请求 $.ajax({ url: &quot;./server/slider.js...
Ajax函数封装ajax.js // Get / Post // 参数 get post // 是否异步 // 如何处理响应数据 // URL // var...