2

「LatLng」座標で指定されている現在の場所を示すこのコードがあります。しかし、私が欲しいのは、入力ボックスを持っていることです.2つの入力ボックスを「場所から」と「場所へ」としましょう。2つのボックスから指定された入力値の現在の場所を表示したいと思います。

それはGoogleマップ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>

ありがとう

ジェイソン

4

3 に答える 3

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
    });
}
});  

マップ フィドル

于 2012-10-16T07:04:43.883 に答える
1

次のアドレスで例を確認できます: https://developers.google.com/maps/documentation/javascript/demogallery

ここでは、質問に対する回答と、さらに必要になる可能性のあるより高度なテクニックを見つけることができます。

ごきげんよう!

于 2012-10-16T06:48:59.253 に答える
0

たぶん次のようなもの:

boxLat.value = map.getCenter().getLat() ;
boxLng.value = map.getCenter().getLng() ;
于 2012-10-16T06:46:53.220 に答える