0

単純なドロップダウン/選択リストをマーカーのコントローラーとして使用しようとしています (アイデアは、マップが選択された場所/マーカーを表示することです)。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>
4

1 に答える 1

3

位置にコンマ区切りの文字列を使用してマーカーを作成しています。LatLngオブジェクトである必要があります。次のようなものを試してください:

var marker = new google.maps.Marker({
    position: new google.maps.LatLng(mypos.split(',')[0], mypos.split(',')[1]),
    map: map,
    title:"Hello World!"
});
于 2012-07-12T13:18:04.260 に答える