2015-01-21 56 views
1

我正在爲My CRM項目創建解決方案(Web資源)。爲此,我使用Bing API在java腳本中編寫了地圖優化代碼。Java腳本未調用函數

retrieveAccountsCallBack正在從CRM中檢索地址。然後我使用這些地址找到他們的地理代碼。 問題是當代碼到達點map.getCredentials(MakeGeocodeRequest)時,它不會進入定義的map.getCredentials(MakeGeocodeRequest)函數。它只是像它的註釋那樣通過這條線。但是有些時候它的作用是扭曲的,但沒有明確的模式。

下面是代碼:

function retrieveAccountsCallBack(retrievedAccounts) { 

     totalAccountCount = totalAccountCount + retrievedAccounts.length; 

     for (var i = 0; i < retrievedAccounts.length; i++) { 

      var account = retrievedAccounts[i]; 
      //retLoc.push(account.new_address); 
      waypoint = retrievedAccounts[i].new_address; 
      map.getCredentials(MakeGeocodeRequest); 
      /////////////////////////////////////////// 

     } 


    } 

代碼MakeGeocodeRequest()

function MakeGeocodeRequest(cred) { 

     var geocodeRequest = "http://dev.virtualearth.net/REST/v1/Locations?query=" + encodeURI(waypoint) + "&output=json&jsonp=GeocodeCallback&key=" + cred; 
     CallRestService(geocodeRequest); 
    } 
+0

您需要爲您的'MakeGeocodeRequest'調用添加一個參數,否則它只是將函數本身傳遞給'map.getCredentials()'。 – Phylogenesis 2015-01-21 09:07:57

回答

0

最後我理解了它!!!! 徹底閱讀Bing Maps API後。我想知道它是由於該API中的一些匿名函數而發生的,我無法理解它是用壓縮的Java腳本代碼編寫的。