infoWindow中的jquery ui对话框

时间:2013-09-27 23:21:34

标签: jquery-ui google-maps-api-3

是否可以在infoWindow或infoBox中使用ui对话框? 这段代码不起作用:

google.maps.event.addListener(marker,"click", function()
    { 
        html = "$('#dialog-click').dialog({...})";
        ib.setContent(html);
        ib.open(map,marker);
    }


<div id="dialog-click">
<label for="name">Name:</label>
<input type='text' id='name' />
<label for="firstname">Firstname:</label>
<input type='text' id='firstname' />
</div> 

1 个答案:

答案 0 :(得分:2)

是的,如果你的意思是从infoWindow或infoBox中打开

您的加价:

<div id="dialog-click">
<label for="name">Name:</label>
<input type='text' id='name' />
<label for="firstname">Firstname:</label>
<input type='text' id='firstname' />
</div> 

infowindow:

infoWindow = new google.maps.InfoWindow({
   map: map
});

地图点击事件:

google.maps.event.addListener(map, 'click', function(args) {
   var html='<a href="#" onclick="$(&quot;#dialog-click&quot;).dialog();">click to open</a>';
   infoWindow.setPosition(args.latLng);        
   infoWindow.setContent(html);
   infoWindow.open(map);
});

enter image description here

只需将dialog() - 代码放在onclick - 处理程序中即可。您可以使用args.pixel设置对话框的位置

var x=args.pixel.x;
var y=args.pixel.y;