javascript的回调函数里如何传递参数

来源:互联网 发布:luajit mac 编辑:程序博客网 时间:2024/04/30 17:45
转载:http://blog.csdn.net/stamsuper/article/details/8990876

[html] view plaincopy
  1. <span style="font-size:14px;">我包装了jQuery的ajax方法  
  2. function doAjax(u,param,callback){  
  3.       $.ajax({  
  4.             type:'POST',  
  5.             url:u,  
  6.             data:param,  
  7.             success:callback  
  8.       });  
  9. }  
  10.   
  11. function showAlert(data){  
  12.      alert(data);  
  13. }  
  14.   
  15. 比如这样调用 doAjax("server.php","id=12&type=1",showAlert);  
  16. $.ajax 在success后,会返回一个data到showAlert中,显示出来 ,没有问题.  
  17. 可是,当我想多传一个参数给showAlert时怎么写?  
  18. 写成doAjax("server.php","id=12&type=1",showAlert("hi",data))、或者把上面的success:callback 写成success:callback(msg,data)显然都不行,如之奈何?求助~~~</span>  

[html] view plaincopy
  1. <span style="font-size:14px;color:#333333;">简单,很多方法都定义了回调函数,回调函数也是函数,就是说不管怎么传,只需要是个函数类型即可。写法如下。  
  2. 方式1,  
  3. doAjax(参数1,参数2,function(request,opts){  
  4.          callback(request,opts,agrs);  
  5.  });  
  6. function callback(request,opts,args){  
  7.                 
  8. };  
  9. 方式2,  
  10. var args=N;  
  11. doAjax(参数1,参数2,function(request,opts){  
  12.        var X=N;  
  13.        回调函数代码块..  
  14.        和以上几乎一样,看个人编码方式选择。        
  15. });</span> 
0 0