Для того что бы показывались только города и страны, выставляем type = (regions)
Код:
<script src="//maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&libraries=places"></script>
<script>
function initialize() {
var input = document.getElementById('searchTextField');
var options = {
types: ['(regions)'],
};
var autocomplete = new google.maps.places.Autocomplete(input, options);
google.maps.event.addListener(autocomplete, 'place_changed', function() {
var place = autocomplete.getPlace(); //получаем место
console.log(place);
console.log(place.name); //название места
console.log(place.id); //уникальный идентификатор места
});
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
В html:
<input id="searchTextField" size="50" type="text" />
Для того что бы искать только по городам, выставляем type = (cities)
Об ограничениях.
Ограничения яндекса, это 10000 поисковых запросов в сутки с подтверждённым телефоном.
Гугла - 20 000 000 запросов в день.
Очень интересно!
ОтветитьУдалитьСкажите пожалуйста а как получить какой либо идентификатор страны и города, что бы в последующем сделать выборку из БД, согласно полученным данным из автокомплита ?
Или я чего то не понимаю
google.maps.event.addListener(autocomplete, 'place_changed', function() {
Удалить//так можно получить объект региона
var place = autocomplete.getPlace();
//так можно вывести в консоль информацию о нём
console.log(place);
//или только название
console.log(place.name);
//или уникальный идентификатор
console.log(place.id);
});
Вам нужен place.id как я понимаю, хотя выборку можно вполне сделать и по названию, в конце концов нет гарантии, что юзер что то выберет, а не отправит то что сам набрал
Подскажите пожалуйста, Иван, допустим есть задача, выводить объявления в зависимости от города, так вот, что за значение нужно хранить в каждом объявлении, что бы делать выборку согласно результатам автозаполнения ?
ОтветитьУдалитьЯ бы хранил в объявлении внутренний id города. Пользователь может не воспользоваться автозаполнением, тогда придется самому искать город в базе по тому что он ввел руками.
УдалитьПодскажите, как сделать, чтобы сначала выводился город, затем область, страна?
ОтветитьУдалить20 000 000? может Вы ошиблись и ограничение 20 000?
ОтветитьУдалитьуточните пожалуйста, это очень важный вопрос
Сейчас не могу найти уже, где тогда смотрел ограничения. Вполне возможно что они изменились. Вот это то что надо кажется:
Удалитьhttps://developers.google.com/places/usage