Javascript 如何添加一个拖拽标记谷歌地图后,使搜索领域

Javascript 如何添加一个拖拽标记谷歌地图后,使搜索领域,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我有一个已经有多个标记的谷歌地图,除此之外,我还有一个搜索字段,用户可以使用地址或纬度/经度来搜索位置。当页面第一次加载时,我有一个可拖动的标记“com_current”落在一个点上。之后,用户尝试从搜索字段进行搜索。应将此标记放置到该位置。我正在使用geocomplete。这显示了我搜索的位置,但我无法将此标记放到该位置 var海滩=[ [“地点A”,21.984606,89.974250], [“西孟加拉邦”,21.681855,88.584980], [“海滩”,21.617401,87

我有一个已经有多个标记的谷歌地图,除此之外,我还有一个搜索字段,用户可以使用地址或纬度/经度来搜索位置。当页面第一次加载时,我有一个可拖动的标记“com_current”落在一个点上。之后,用户尝试从搜索字段进行搜索。应将此标记放置到该位置。我正在使用geocomplete。这显示了我搜索的位置,但我无法将此标记放到该位置

var海滩=[
[“地点A”,21.984606,89.974250],
[“西孟加拉邦”,21.681855,88.584980],
[“海滩”,21.617401,87.500898]
];
var标记=[];
var映射//在此处设置范围,以便各种函数可以使用它们
函数初始化(){
map=new google.maps.map(document.getElementById('map'){
缩放:2,
中心:新google.maps.LatLng(beats[0][1],beats[0][2]),
mapTypeId:google.maps.mapTypeId.ROADMAP
});
变量com_图像={
url:'assets/img/single.png',
尺寸:新谷歌地图尺寸(61,72),
来源:新google.maps.Point(0,0),
主播:新google.maps.Point(0,32)
};
var infowindow=new google.maps.infowindow();
var标记,i;
变量形状={
coords:[1,1,1,20,18,20,18,1],
类型:“poly”
};
对于(i=0;i<0.length;i++){
marker=新的google.maps.marker({
职位:新google.maps.LatLng(beats[i][1],beats[i][2]),
地图:地图
});
google.maps.event.addListener(标记,'click',(函数(标记,i){
返回函数(){
infowindow.setContent(海滩[i][0]);
信息窗口。打开(地图、标记);
}
})(marker,i));
标记器。推(标记器);
}
//将标记设置为mainlocation
com_current=new google.maps.Marker({
地图:地图,
真的,
图标:'https://cdn.sstatic.net/Sites/askubuntu/img/favicon.ico?v=eff8fd315b9e',
动画:google.maps.animation.DROP,
职位:{
拉脱维亚:35.6895,
液化天然气:139.6917
}
});
$(“#地理完整”)。地理完整({
详情:“表格”
}).bind(“地理代码:结果”,函数(事件,结果){
var mylatng=new google.maps.LatLng(parseFloat(result.geometry.location.lat()),parseFloat(result.geometry.location.lng());
log(result.geometry.location.lat());
panTo地图(Mylatng);
});
}
html,
身体{
身高:100%;
保证金:20px自动;
填充:0;
}
#地图{
身高:100%;
}
#地球完整{
背景色:#fff;
字体系列:Roboto;
字体大小:15px;
字体大小:300;
左边距:12px;
填充:0 11px 0 13px;
文本溢出:省略号;
宽度:300px;
}

您可以使用
标记器.setPosition
方法:

marker.setPosition (new google.maps.LatLng( 48.864716, 2.349014 ));    // Paris
在代码中,您只需通过以下方式更改
geoplete
函数:

$("#geocomplete").geocomplete({
    details: "form"
}).bind("geocode:result", function(event, result) {
    var myLatlng = new google.maps.LatLng(parseFloat(result.geometry.location.lat()), parseFloat(result.geometry.location.lng()));
    com_current.setPosition (myLatlng);
    map.panTo(myLatlng);
});

如果您有任何问题或意见,请告诉我。

您可以使用
标记器。设置位置
方法:

marker.setPosition (new google.maps.LatLng( 48.864716, 2.349014 ));    // Paris
在代码中,您只需通过以下方式更改
geoplete
函数:

$("#geocomplete").geocomplete({
    details: "form"
}).bind("geocode:result", function(event, result) {
    var myLatlng = new google.maps.LatLng(parseFloat(result.geometry.location.lat()), parseFloat(result.geometry.location.lng()));
    com_current.setPosition (myLatlng);
    map.panTo(myLatlng);
});
如果你有什么问题或意见,请告诉我