作为一个前端,虽然JQuery写的不少,但是却很经常忘记很多语法上的要点,惭愧惭愧。这次就是有关JQuery中ajax的callback回调函数的问题。
很多时候我们会使用ajax获取数据,然后在success之后对数据进行操作,有时我们就需要用到回调函数。
我之前一直以为JQuery中ajax的回调函数可以直接传递函数名,然后就可以在ajax请求成功后直接使用这个函数。当我在项目中这样直接使用的时候不断提示“callback is not a function”,后来自己查询测试过后才发现,回调函数是传递一个匿名函数,然后在匿名函数里面再调用需要使用的函数的函数名,而不是传递函数的名称。例子如下:
function operateData (result) {
consolt.log(result);
}
function getAjaxData (callback) {
$.ajax({
url: url, //需要请求的URL
type: 'POST',
data: data,//需要传递的参数
dataType:datatype//数据格式
success: function (result) {
callback(result);
}
})
}
getAjaxData(function (result) {
operateData(result);
})
——记录遇到的每个问题