【问题标题】:Initializing google map with form values使用表单值初始化谷歌地图
【发布时间】:2013-03-17 08:08:56
【问题描述】:

我必须从表单值重新初始化谷歌地图。但是我无法在单击按钮时获得表单的值(名为 dynamic_display)。任何人都可以给出一些想法如何做到这一点。 地图代码为:

    <script>
        function initialize(a,b,zoom){
 if (!a || !b ||!zoom){ 
//alert('not done '+ "lat="+a+" lang= " +b+" zoom= "+zoom); 
       var centerLoc=new google.maps.LatLng( 53.61701054652337,53.37824736488983);
       zoom=16;
}
else
{
//alert('done' + "lat="+a+" lang= " +b+" zoom= "+zoom);  
var centerLoc=new google.maps.LatLng(a,b);
}
       var mapProp = {
           center:centerLoc,
           zoom:zoom,
           //mapTypeId:google.maps.MapTypeId.ROADMAP
           mapTypeId:google.maps.MapTypeId.SATELLITE
       };  
       var map=new google.maps.Map(document.getElementById("googleMap") ,mapProp);
           marker=new google.maps.Marker({
                  position:centerLoc,
                  title:'Click to zoom'
           });
  google.maps.event.addListener(marker,'click',function() {
                map.setZoom(map.getZoom()+1);
                map.setCenter(marker.getPosition());
       });
      marker.setMap(map);   
        }
         google.maps.event.addDomListener(window, 'load', initialize);
    </script>

表格:

 <html>
    <body onload="initialize(30,70,5)">
        <form method="GET"  >

                Enter latitude:     <input type ="text" name="lat" id="lat" / ><br/>

                Enter longitude:    <input type ="text" name="lang"  id="lang"/ ><br/>

                Enter Zoom level:   <input type ="text" name="zoom"  id="zoom"/ ><br/>

                                    <input type="button" value ="dynamic_ display" onclick=" initialize(
                                    document.getElementById('lat').value,

                                    document.getElementById('lang').value,

                                    document.getElementById('zoom').value)"/>
                                    <input type="button" onclick=" initialize(32,72,6)" value="Manual_display"/>

                </form>

                                <center><div id="googleMap"  style="width:1000px;height:500px;"></div></center>

感谢您的帮助。

【问题讨论】:

    标签: javascript forms google-maps button google-maps-api-3


    【解决方案1】:
    1. 有一个错字,&lt;srcipt&gt;
    2. 对我来说,值可以在函数内部访问。由于您没有发布功能代码,我认为这是一个类型错误。至少 zoom 应为 Number 类型,但输入值始终为 String 类型。 在使用之前使用Number 将其转换为数字。

    【讨论】:

    • 感谢我已将 Zoom 从字符串转换为 int 并且有效:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-11
    相关资源
    最近更新 更多