2015-01-21 2 views
1

Я создаю решение (веб-ресурс) для проекта My CRM. Для этого я написал код оптимизации карты в java-скрипте, используя Bing API.Java Script Not Calling Функция

retrieveAccountsCallBack извлекает адреса из CRM. Затем я использую этот адрес, чтобы найти их Geo Codes. Проблема в том, когда код достигает значения 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

ответ

0

Наконец я понял это !!!! После тщательного ознакомления с API Bing Maps. я узнал, что это произошло из-за некоторых анонимных функций в этом API, которые я не мог понять, поскольку он был написан в сжатом коде Java-скрипта.

Смежные вопросы