2012-05-17 67 views
0

buildMyUrl的結果在調用函數中始終未定義。我不知道我做錯了鏈接這些功能是什麼:jQuery延遲,在鏈中獲取值時遇到問題

var buildMyUrl = function (callback) 
{ 
    var param; 

    var addParams = function (domainUrl) 
    { 
     domainUrl += "page.aspx?"; 
     domainUrl += "Param1="; 
    }; 

    $.when(self.buildDomainUrl()).then(addParams); 
}; 

buildDomainUrl返回一個jQuery承諾,並添加參數正常工作。 現在我有想用的buildMyUrl結果的功能:基於凱文·B的意見

var buildAPageUrl = function() 
    { 
     var dfd = $.Deferred(); 

     var addCalendarPage = function (domainUrl) 
     { 
      dfd.resolve(domainUrl += "/Calendar.aspx?"); 
     }; 

    // Here lies the problem (buildMyUrl is undefined) 
     $.when(buildMyUrl()).then(addCalendarPage); 

     return dfd.promise(); 
    } 
+0

哪裏是'buildMyLoginUrl()'定義? –

+0

@Kevin B. buildMyLoginUrl應該只是buildMyUrl我的錯誤。 – JonWells

+0

'buildMyURL'沒有返回延遲對象。它沒有返回任何東西。 –

回答

0

以下工作:

var buildMyUrl = function (callback) 
{ 
    var dfd = $.Deferred(); 
    var param; 

    var addParams = function (domainUrl) 
    { 
     domainUrl += "page.aspx?"; 
     domainUrl += "Param1="; 
     dfd.resolve(); 
    }; 

    $.when(self.buildDomainUrl()).then(addParams); 
    return dfd.promise(); 
};