2012-10-16 212 views
2

我有這個代碼顯示當前位置在「LatLng」座標中指定。但我想要的是有一個輸入框,可以說2個輸入框「位置從」和「位置到」。我希望顯示指定的2個框中給定輸入值的當前位置。谷歌地圖設置的位置?

這是可能的谷歌地圖V3?

我想要mapOptions的值將是框中的值輸入。 如何做到這一點?

這是我的代碼。

<!DOCTYPE html> 
<html> 
    <head> 
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
    <style type="text/css"> 
     html { height: 100% } 
     body { height: 100%; margin: 0; padding: 0 } 
     #map_canvas { height: 100% } 
    </style> 
    <script type="text/javascript" 
     src="http://maps.googleapis.com/maps/api/js?key=AIzaSyBQ8OCC8En5vNHod25Ov3Qs5E1v7NPRSsg&sensor=true"> 
    </script> 
    <script type="text/javascript"> 
     function initialize() { 
        // add mapOptions here to the values in the input boxes. 
     var mapOptions = { 
      center: new google.maps.LatLng(-34.397, 100.644), 
      zoom: 2, 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 
     var map = new google.maps.Map(document.getElementById("map_canvas"), 
      mapOptions); 
     } 
    </script> 
    </head> 
    <body> 

    From: <input type="text" name="From"><br> 
    To: <input type="text" name="To"><br> 

    <button type="button" onclick="initialize()">View example (map-simple.html)</button> 

    <div id="map_canvas" style="width:100%; height:100%"></div> 
    </body> 
</html> 

感謝

傑森

+1

是有可能,請出示你有什麼,除了尋找上述 –

+0

更新代碼的教程代碼試圖.... – user1120260

回答

4

你應該使用geocoder

geocoder = new google.maps.Geocoder();  
var address = document.getElementById('address').value; //input box value 
geocoder.geocode({ 'address': address}, function(results, status) { 
if (status == google.maps.GeocoderStatus.OK) { 
    map.setCenter(results[0].geometry.location); 
    var marker = new google.maps.Marker({ 
     map: map, 
     position: results[0].geometry.location 
    }); 
} 
}); 

Map Fiddle

+0

如果我有兩個輸入,這個工作嗎?如何?非常感謝! – user1120260

+0

是的,爲此,您應該創建函數並將地址傳遞給該函數參數 –

+0

如何?即使現在上面的代碼是不是很好... :( – user1120260

0

也許是這樣的:

boxLat.value = map.getCenter().getLat() ; 
boxLng.value = map.getCenter().getLng() ; 
+0

我認爲它應該是相反的方式.... map.getCenter.getlat()= boxLat.value;同樣去其他 – user1120260