关于ajax传递函数参数的问题

今天做网页的时候,想ajax在success后执行我自己写的一个函数,于是我传值如下:

 var ajx=function(func){
            var url="http://www.rulertech.com:3000/api/getAllOfferJobs";
             $.ajax({
                url: url,
                type: 'GET', 
                dataType: 'json'
                }).done(function(data,func){
                           func(data);  
                }).fail(function() {
                           console.log('出错了');
                }).always(function() {
                           console.log('why always me!');
           });       
         }

然后控制台报错,说func is not a function;问了人之后告诉我:

“ajax回调不就一个参数data么?那个func是什么玩意???不用传……

你这个回调函数只交给ajax去执行的, ajax会将传回来的数据作为你的参数也就是data来执行回调函数,

所以这个回调函数是没有后面的参数的  func是undefined”

于是我改正过来就成功了!

 var ajx=function(func){
            var url="http://www.rulertech.com:3000/api/getAllOfferJobs";
             $.ajax({
                url: url,
                type: 'GET', 
                dataType: 'json'
                }).done(function(data){
                           func(data);  
                }).fail(function() {
                           console.log('出错了');
                }).always(function() {
                           console.log('why always me!');
           });       
         }

猜你喜欢

转载自blog.csdn.net/qq_42209411/article/details/85369436