我知道如何创建自定义标记,但我想要做的是创建一个函数,将“From”和“To”标记(或A和B,因为它们在地图上显示)设置到哪里我单击,然后使用新位置更新搜索框。
例如,假设我有一条从123 Fake Street到123 Madeup Lane的路线,From和To搜索框分别表示123 Fake Street和123 Madeup Lane。当我运行此特定功能时,我希望标记移动并用新标记位置替换“From”和“To”搜索框。
这可能吗?
答案 0 :(得分:1)
看看这个工作示例HERE。点击地图,第一次点击将是您的起点,而第二次点击地图将是目的地点。
答案 1 :(得分:0)
google.maps.event.addListenerOnce(map, 'click', function(event){
var fromLat = event.latLng.lat();
var fromLong = event.latLng.lng();
var markLatLng = new google.maps.LatLng(fromLat, fromLong);
var marker = new google.maps.Marker({
position: markLatLng,
map: map
});
document.getElementById('field_from').value = markLatLng;
var start = document.getElementById('field_from').value
var end = document.getElementById('field_to').value;
var request = {
origin:start,
destination:end,
travelMode: google.maps.DirectionsTravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
}
});
markersArray.push(marker);
});
解决了它,如果有人有兴趣的话。