谷歌地图-添加新的标记,无需每次初始化地图
【腾讯云】亏本大甩卖,服务器4核16G 1年370元(带宽12M,系统盘120GB SSD盘,月流量2000GB)!!!!!!
云产品 配置 价格
服务器 1核2G,带宽5M,系统盘50GB SSD盘,月流量500GB 38元/年
MySQL 1核1G 19元/年
服务器 16核32G,带宽18M,系统盘250GB SSD盘,月流量5000GB 1197元/年
点我进入腾讯云,查看更多详情

This is what I want to do: I ask the user to type a latitude+longitude into an input box and I want to show a marker on the map for that location, without having to initialize the map every time.

I have initialized a map as follows:

<script type="text/javascript">
    jQuery(document).ready(function() {
    var myOptions = {
          center: new google.maps.LatLng(34.053228, -118.259583),
          zoom: 12,
          zoomControl: true,
          mapTypeId: google.maps.MapTypeId.ROADMAP
        };
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
    });
</script>
<div style='height: 400px;'>
    <div id="map_canvas" style="width:100%; float: left; height:100%"></div>
</div>

No jazz till now, this is the normal way of defining a map. Now, I have an input box, where I ask the user to type an address:

<input type="text" size=30 name="lat" id="lat">
<input type="text" size=30 name="lon" id="lon">
<button type="button" id="address_submit">Search</button>

I want to show the marker for that address. I defined a function, shown below, but am not getting how to show get the map object:

    $("#address_submit").live("click", function() {
    lat = $("#lat").val();
    lon = $("#lon").val();
    var marker = new google.maps.Marker({
          position: new google.maps.LatLng(lat, lon),
          map: map, //HOW DO I GET THIS MAP OBJECT??
          title:"Hello World!"
      });
}

#0

I've tried your code in a jsfiddle => http://jsfiddle.net/HaDbR/ and all seems to work as expected (I've reduced a bit the zoom factor just to see inserted markers): I've inserted some coordinates in the form (near to the map center coords) and the markers appeared correctly.

The only real differences is the visibility of map variable so that the click handler applied to the button can see it, and the .on() method instead of .live()

I've inserted the googlemap API script, calling a callback function createMap() and in that function I've initialized the map and I've associated the handler, so by closure it can have access to your map

推荐文章

如何将值从一个jsp页传输到第二个jsp页

如何将值从一个jsp页传输到第二个jsp页

推荐文章

有没有可能在C语言中将内存位置更改为共享内存?

有没有可能在C语言中将内存位置更改为共享内存?

推荐文章

Regsvr32在Windows 7上崩溃

Regsvr32在Windows 7上崩溃

推荐文章

Cakephp ajax分页问题

Cakephp ajax分页问题

推荐文章

用WCF传输大数据的问题

用WCF传输大数据的问题

推荐文章

(UIView*)在viewcontroller中进行hitTest?

(UIView*)在viewcontroller中进行hitTest?

推荐文章

如何使用PHP会话查看MYsql数据库表?

如何使用PHP会话查看MYsql数据库表?

推荐文章

wpf中选定控件的边界矩形

wpf中选定控件的边界矩形

推荐文章

使用Phonegap和Javascript在运行时读取app bundle中的文件

使用Phonegap和Javascript在运行时读取app bundle中的文件

推荐文章

如何将char转换为int?

如何将char转换为int?

推荐文章

如何在Android的数据库中使用ListView中的图像?

如何在Android的数据库中使用ListView中的图像?

推荐文章

iphone:如何同步2个nsmutable数组的内容?

iphone:如何同步2个nsmutable数组的内容?

推荐文章

使用mysql排序规则的安全问题/sql注入?

使用mysql排序规则的安全问题/sql注入?

推荐文章

如何使用bookmarklet加载javascript文件,而bookmarklet又不会重定向/重写页面?

如何使用bookmarklet加载javascript文件,而bookmarklet又不会重定向/重写页面?

推荐文章

游戏教练机开发

游戏教练机开发

推荐文章

PHP/PDO:准备好的语句在创建表时不起作用?

PHP/PDO:准备好的语句在创建表时不起作用?