Vì vậy, tôi có một trang tìm kiếm có đầu vào vị trí. Nếu người dùng đến từ một trang khác có truy vấn tìm kiếm, tôi muốn nhập truy vấn này theo cách lập trình vào đầu vào và kích hoạt địa điểm đã thay đổi.Cách nhập chuỗi tìm kiếm theo chương trình và kích hoạt places_changed cho API Google Maps?
Dưới đây là những gì tôi có cho đến nay:
var searchBox = new google.maps.places.SearchBox(input);
$('input#location').val(searchQuery);
google.maps.event.trigger(searchBox, 'places_changed');
Tuy nhiên, điều này mang lại cho tôi những lỗi Cannot read property 'length' of undefined
cho dòng này của chức năng places_changed
tôi:
var places = searchBox.getPlaces();
if (places.length == 0) {
return;
}
Vì vậy, rõ ràng searchBox
lợi nhuận undefined
cho getPlaces()
khi đầu vào đã được điền đầy đủ. Làm sao để tôi có được xung quanh này?
CẬP NHẬT:Here is a JSFiddle để minh họa ý tôi.
'searchBox' là gì, bạn định nghĩa nó ở đâu? Bạn có thể cho chúng tôi thấy ví dụ đầy đủ hơn về mã của bạn thể hiện sự cố xảy ra không. – duncan
@duncan Đã cập nhật bài đăng gốc để bao gồm, nó chính xác như các ví dụ mặc định của Google. –
'input' và' searchQuery' là gì? Vui lòng cung cấp [ví dụ tối thiểu, đầy đủ và có thể xác minh được] (http://stackoverflow.com/help/mcve) – duncan