Pesquisa de site

javascript - Google Maps API V3 - Existe alguma maneira de recuperar os resultados do Autocomplete em vez de exibí-los em um dropdown?


Preciso renderizar os resultados de google.maps.places.Autocomplete de uma forma personalizada, em vez do menu suspenso padrão.

Existe alguma maneira de eu usar a API do Google Maps V3 para recuperar as mesmas informações do Autocomplete, mas em um Array por solicitação, em vez de a API fazer a renderização para mim?

PS1:

Eu me perguntei se poderia usar o google.maps.places.PlaceSearchRequest. Mas, diferentemente do Autocomplete, ele restringe minha localização. Não pode ser usado para pesquisar mundialmente.

  • http://code.google.com/apis/maps/documentation/javascript/reference.html
  • http://code.google.com/apis/maps/documentation/places/index.html

PS2:

A forma padrão como eu estou (atualmente) usando o Autocomplete me restringe. Eu preciso passar um elemento de input, e a API renderiza o dropdown, o que eu NÃO quero.

var autocomplete, input_el, place_changed_trigger_func;
input_el = <an input element>;
place_changed_trigger_func = function() {
  var place = autocomplete.getPlace();
  // do whatever you want with place
};
autocomplete = new google.maps.places.Autocomplete(input_el, {types: ["geocode"]});
google.maps.event.addListener(autocomplete, 'place_changed', place_changed_trigger_func);

Resposta #1

Acredito que este seja o link que @jegnag quis incluir.

https://developers.google.com/maps/documentation/javascript/places-autocomplete#place_autocomplete_service

Você pode acessar o array de resultados (lugares além dos termos de pesquisa sugeridos), você pode até adicionar seus próprios resultados personalizados a esse array e exibir tudo da maneira que quiser.

Resposta #2

Você já explorou a função de Autocomplete do webservice Places API? Isso parece ser o que você está procurando.