Drop down menu Google地图标记表单选择列表(使用:event.adddomstener&;API V3)

Drop down menu Google地图标记表单选择列表(使用:event.adddomstener&;API V3),drop-down-menu,google-maps-api-3,google-maps-markers,onchange,event-listener,Drop Down Menu,Google Maps Api 3,Google Maps Markers,Onchange,Event Listener,我试图使用一个简单的下拉列表/选择列表作为标记的控制器(想法是地图将显示选定的位置/标记)。DomListener可以处理onchange事件,但由于某些原因,标记不会显示。我是否需要使用另一个事件侦听器,或者以其他方式创建标记 var map = null; function initialize() { var myOptions = { zoom: 5 ... etc }; var map = new google.maps.Map(document.getEleme

我试图使用一个简单的下拉列表/选择列表作为标记的控制器(想法是地图将显示选定的位置/标记)。DomListener可以处理onchange事件,但由于某些原因,标记不会显示。我是否需要使用另一个事件侦听器,或者以其他方式创建标记

    var map = null;

function initialize() {
var myOptions = {
      zoom: 5 ... etc };
var map = new google.maps.Map(document.getElementById('map_canvas'),
        myOptions);
...

 google.maps.event.addDomListener(document.getElementById('SelectList'), 
            'change', function() {

var mypos = document.getElementById('SelectList').value;




alert(mypos); /* output/value is correct */


/* This code doesn’t display marker */
var marker = new google.maps.Marker({
        position: mypos, 
        map: map,
        title:"Hello World!"
    });



     });

...
}
------------------------
My HTML select-list:
<select id="SelectList">
<option value="12.123456, 12.987654">location 1</option>
<option value="11.123456, 12.987654">Location 2</option>
</select>
var-map=null;
函数初始化(){
变量myOptions={
缩放:5…等};
var map=new google.maps.map(document.getElementById('map_canvas'),
肌肽);
...
google.maps.event.addDomListener(document.getElementById('SelectList'),
'change',function(){
var mypos=document.getElementById('SelectList')。值;
警报(mypos);/*输出/值正确*/
/*此代码不显示标记*/
var marker=new google.maps.marker({
职位:mypos,
地图:地图,
标题:“你好,世界!”
});
});
...
}
------------------------
我的HTML选择列表:
地点1
地点2

您正在为位置创建一个带有逗号分隔字符串的标记。它需要是一个LatLng对象。尝试以下方法:

var marker = new google.maps.Marker({
    position: new google.maps.LatLng(mypos.split(',')[0], mypos.split(',')[1]),
    map: map,
    title:"Hello World!"
});

您正在使用逗号分隔的字符串为位置创建标记。它需要是一个LatLng对象。尝试以下方法:

var marker = new google.maps.Marker({
    position: new google.maps.LatLng(mypos.split(',')[0], mypos.split(',')[1]),
    map: map,
    title:"Hello World!"
});
在哪里初始化“map”变量?有没有javascript错误?在哪里初始化“map”变量?您是否有任何javascript错误?