2011-12-02 49 views
1

我使用一些延遲功能,與中,.done所以,我有這樣的事情:傳遞數據

askTime(number).done(formatTime).done(function(html){ 
    times += html; 
}); 

但是,儘管formatTime返回data,該html VAR有返回的數據askTime

我不知道如果問題在哪裏。 formatTime接收由askTime返回的數據變量,但如果我把:

askTime(number).done(formatTime(data)).done(function(html) 

它說,data沒有定義。

+0

嘗試askTime(數字).done(功能(數據){formatTime(數據);})來完成(功能(HTML) – hungryMind

+0

不一致的Q,但是,儘管formatTime返回的數據與格式時間接收到一個數據變量。代碼askTIme,格式時間將幫助。 – hungryMind

+0

@hungryMind這兩個函數的工作原理,因爲這兩個函數都是我分裂爲可以在其他地方使用它們相同功能的一部分 –

回答

2

要鏈延緩方法,您需要調用.pipe()

看一看:http://api.jquery.com/deferred.pipe/

+0

我看看,但無法正確理解。給出的例子有點困難或不清楚(至少對我來說) –

+0

@AntonioLaguna只要嘗試「.pipe()」,而不是你的第一個「.done()」碼。 – Pointy

+0

我拿起這裏的最終代碼http://stackoverflow.com/questions/5921283/understanding-jquery-deferred-pipe和作品,似乎對我來說是可以理解的,但這不是什麼在文檔中。你能給我更多的光嗎? –