使用Googlemaps V3
我正在尝试在googlemap上向infoWindow添加一个按钮。 infoWindows和按钮按预期显示。我正在尝试捕获按钮的onclick事件。这就是我到目前为止所做的:
var contentBtn = '<p><button id="marker'+numby+'" class="iwLink" href="#" >Done</button></p>';
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(address+contentBtn);
infowindow.open(map, this);
});
google.maps.event.addDomListener(contentBtn, 'click', function() {
alert($(this).attr('id'));
});
infoWindow按预期显示,以及按钮。但是,我在控制台日志中也收到以下错误:
未捕获的TypeError:无法读取属性&#39;点击&#39;未定义的 这似乎是由行
引起的google.maps.event.addDomListener(contentBtn, 'click', function()
答案 0 :(得分:4)
在infowindow完成渲染之前,该按钮不会添加到DOM。在infowindow domready event触发之前,您无法使用getElementById(或等效的jquery)找到它。
var contentBtn = '<p><button id="marker'+numby+'" class="iwLink" href="#" >Done</button></p>';
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(address+contentBtn);
infowindow.open(map, this);
});
google.maps.event.addListener(infowindow, 'domready', function() {
google.maps.event.addDomListener(contentBtn, 'click', function() {
alert($(this).attr('id'));
});
});