谷歌地图api Javascript添加onclick到infowindow

时间:2015-07-11 09:59:41

标签: javascript google-maps-api-3 infowindow

我试图向我的infowindow添加onclick,在我点击它后会显示更大的信息窗口。

现在我只想表现出警报,但遇到麻烦。

这是我的信息代码:

google.maps.event.addListener(marker, 'click', (function (marker, i) {
           return function () {
               var Name = locations[i][0];
               infowindow.setContent(Name + '<button onclick="markerCliked(Name)">Click</button>');
               infowindow.open(map, marker);
           }
       })(marker, i));

我的onclick功能:

function markerCliked(Name){
    alert("Pressed on network " + Name);
}

我收到一个名称未定义的错误。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

您正在创建一个看起来像

的元素
<button onclick="markerCliked(Name)">Click</button>

&#34;姓名&#34;意味着在这种背景下?什么都没有,这个函数不在创建元素的函数的范围内,所以Name没有任何意义

你可以做到

infowindow.setContent(Name + '<button onclick="markerCliked(\'' + Name + '\')" >Click</button>');

创建

<button onclick="markerCliked('value of name')">Click</button>

value of name是创建按钮时变量Name的实际值...这可以达到你想要的效果