缺少]谷歌地图事件对象的元素列表后 [英] missing ] after element list for google maps event object
问题描述
我试图在onclick事件上调用moreInfo()函数,并为它提供关于click事件的信息。
这里是代码示例:
google.maps.event.addListener(SomeArea,'click',showTB);
function showTB(event){
// content has the map click event
var contentString = event.latLng +
'< br> '+'< button onclick =moreInfo('+ event +')>更多< / button>';
infoWindow.setContent(contentString);
$ / code>
这里是相关函数moreInfo
function moreInfo(e){
var overlayContent = e.latLng
document.getElementById(content)。innerHTML = overlayContent;
firebug输出:
<
$ b
moreInfo([object Object])
我该如何解决这个问题?
c> infoWindow 也可能是 DOMNode
。
创建一个 DOMNode
并将按钮插入此节点,那么您可以将按钮应用于按钮(并传递任何类型的参数):
函数showTB(event){
var contentElement = document.createElement('div'),
btn = document。的createElement( '按钮');
contentElement.appendChild(document.createTextNode(event.latLng));
contentElement.appendChild(document.createElement('br'));
contentElement.appendChild(btn);
btn.appendChild(document.createTextNode('More'));
google.maps.event.addDomListener(btn,'click',function(){moreInfo(event);})
infoWindow.setContent(contentElement);
演示: http://jsfiddle.net/doktormolle/N5Etg/
I'm trying to call moreInfo() function on the onclick event and to give it information about the click event.
here are code samples:
google.maps.event.addListener(SomeArea, 'click', showTB);
function showTB(event) {
//content has the map click event
var contentString = event.latLng +
'<br>' + '<button onclick="moreInfo('+event+')">More</button>';
infoWindow.setContent(contentString);
}
here is relevant function moreInfo
function moreInfo(e){
var overlayContent = e.latLng
document.getElementById("content").innerHTML = overlayContent;
}
firebug output:
SyntaxError: missing ] after element list
moreInfo([object Object])
How can I fix this?
the content for an infoWindow
may also be a DOMNode
.
Create a DOMNode
and insert the button into this node, then you'll be able to apply a click-listener to the button(and pass any type of argument):
function showTB(event) {
var contentElement = document.createElement('div'),
btn = document.createElement('button');
contentElement.appendChild(document.createTextNode(event.latLng));
contentElement.appendChild(document.createElement('br'));
contentElement.appendChild(btn);
btn.appendChild(document.createTextNode('More'));
google.maps.event.addDomListener(btn,'click',function(){ moreInfo(event);})
infoWindow.setContent(contentElement);
}
Demo: http://jsfiddle.net/doktormolle/N5Etg/
这篇关于缺少]谷歌地图事件对象的元素列表后的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!