-1

我發出了一個Google請求,並罰款。在我的Streets變量中,我有一個值數組。但自動完成不會顯示它們。Jquery UI Autocomplete如何獲取ajax調用的源代碼?

難道有人知道這裏有什麼不對嗎?

source: function() { 
     $.get(googleAPI + '"' + postCodeString + ' ' + cityString + ', ' + this.term + '"', function (response) { 

      var Streets =[]; 

      $.map(response.results, function (item) { 
       // Get address_components 
       // console.log(item) 
       for (var i = 0; i < item.address_components.length; i++) { 
        var addressType = item.address_components[i].types[0]; 

        if (addressType === 'route') { 
         return Streets.push(item.address_components[i].long_name); 
        } 
       } 


      }); 
      return Streets; 
      // console.log(Streets); 

     }); 
+0

的所有元素之前返回'Streets'迭代,你可以運行它到控制檯,並提供價值的例子嗎?另外'Streets是在你的$ .get()中創建的,所以它超出了範圍。如果你之前定義它,那麼它應該工作。 – Twisty

+0

它的數組像[「name」,「name2」] –

回答

0

你的代碼只檢查第一個元素是types數組:

item.address_components[i].types[0] 

如果「路線」類型不是在那個位置,它永遠不會發現它。

你需要通過陣列