2010-06-30 102 views
1

,而不是在標準的方式編寫代碼:jQuery的回調函數

$.get('test.xml',function(){ 
    //manipulate the code here 
}) 

我想這種方式把事情寫代碼更容易:

$.get('test.xml',callback(data)); 

function callback(data){ 
    //manipulate with the data below... 
} 

但錯誤顯示「數據不確定」 , 我怎樣才能解決這個問題?

+0

感謝所有的答案和註釋變量! – webberpuma 2010-07-01 15:35:37

回答

6

只要寫

$.get('test.xml',callback); 

當你寫

$.get('test.xml',callback(data)); 

然後callback被執行立即(調用函數)。


或者,如果data不應該是從Ajax調用返回的數據,而是要傳遞給函數的一些參數,你有兩種可能性:

  1. 製作callback返回功能。
  2. 包裹callback呼叫一個匿名函數:

    $.get('test.xml',function(){callback(data);}); 
    
2

剛剛離開的數據出來。它是自動發送給回調函數中的參數:

$.get('test.xml',callback); 

function callback(data){ 
    //manipulate with the data below... 
} 
0

嘗試:

$.get('test.xml',function(){callback(data)}); 

JS不能處理的回調函數的方式