Jquery 当我点击谷歌地图标记时,我可以使用ajax更新Div吗?

Jquery 当我点击谷歌地图标记时,我可以使用ajax更新Div吗?,jquery,google-maps-api-3,Jquery,Google Maps Api 3,我有一张我创建的谷歌地图,它的建筑标记来自一个数据库。我正在用数据库的信息填充这些标记。我想做的是在地图右边的一个div中填写这些信息。我的想法是,如果我可以通过ajax将标记的ID发送到一个页面,该页面将查找信息并用信息重新加载该页面。我充其量只是一个ajax新手,我不知道从哪里开始 感谢您的帮助。当您创建标记时,请将html插入信息窗口,请参见第行var html function createMarker(latlng, name, id) { var html = "<b>

我有一张我创建的谷歌地图,它的建筑标记来自一个数据库。我正在用数据库的信息填充这些标记。我想做的是在地图右边的一个div中填写这些信息。我的想法是,如果我可以通过ajax将标记的ID发送到一个页面,该页面将查找信息并用信息重新加载该页面。我充其量只是一个ajax新手,我不知道从哪里开始


感谢您的帮助。

当您创建标记时,请将html插入信息窗口,请参见第行
var html

function createMarker(latlng, name, id) {
var html = "<b> Marker " + id + "</b> <br/><br/><button onclick='doIt("+id+")'>Do It</button>";var image = "icons/XX.png";
  var shadow = "icons/XXX.png";
  var marker = new google.maps.Marker({
    map: map,
    position: latlng,
    icon: image,
    shadow: shadow
  });
  google.maps.event.addListener(marker, 'click', function() {
    infoWindow.setContent(html);
    infoWindow.open(map, marker);
  });
函数createMarker(latlng、name、id){
var html=“Marker”+id+”

Do It“var image=“icons/XX.png”; var shadow=“icons/XXX.png”; var marker=new google.maps.marker({ 地图:地图, 位置:latlng, 图标:图像, 影子:影子 }); google.maps.event.addListener(标记'click',函数(){ setContent(html); 信息窗口。打开(地图、标记); });
}


函数doIt(id)
将使用Ajax重新加载。

使用jQuery并不困难,我建议使用-method。它启动ajax请求并将响应加载到目标:

google.maps.event.addListener(marker, 'click', function() {
          $('#divID').load('some.php?id=123');
        });

(其中divID是要显示响应的元素的ID)

下面是一个通过单击多边形而不是标记来工作的示例(但概念相同):

代码片段(带标记):

var-map=null;
函数createMarker(latLng,html){
var marker=new google.maps.marker({
位置:latLng,
地图:地图
});
google.maps.event.addListener(标记'click',函数(){
document.getElementById('info').innerHTML=html;
});
}
函数openIW(layerEvt){
如果(layerEvt.row){
var content=layerEvt.row['admin'].value;
}else if(layerEvt.featureData){
var content=layerEvt.featureData.name;
}
document.getElementById('info').innerHTML=“您单击:
”+内容; } 函数初始化(){ var chicago=new google.maps.LatLng(36.4278,-15.9); 变量myOptions={ 缩放:0, 中心:芝加哥, mapTypeId:google.maps.mapTypeId.ROADMAP } map=new google.maps.map(document.getElementById(“map_canvas”),myOptions); 创建标记({ 拉脱维亚:42, 液化天然气:-72 }“美国”); 创建标记({ 拉脱维亚:42, 液化天然气:72 }“俄罗斯”); 创建标记({ 纬度:37.9838096, 液化天然气:23.7275388 },“希腊雅典”); 创建标记({ lat:-8.783195, 液化天然气:-55.491477 }“南美洲”); } google.maps.event.addDomListener(窗口“加载”,初始化)


您还可以定义可访问的标记的自定义属性
$('#divID').load('some.php?id='+marker.markerid)
还要确保打开信息窗口以获得所需的行为哪个信息窗口?问题不是关于infoWindows的。谢谢你的回复。我将尝试这种方法并向您汇报。非常感谢。我想这会对我有帮助的。我刚刚运行了一个快速测试,它加载了一个快速的hello world页面。我将努力传递该值,以便现在可以用真实信息填充它。再次感谢。这增加了太多的复杂性-用户需要单击标记,然后单击信息窗口中的按钮。