我有一个模型位置,其中有两列经度和纬度。我想找到一种获取位置列表并将其传递给使用Ajax和javascript的google地图的方法。到目前为止,我的代码如下:
map.js:
function initialize() { var map; var latlng = new google.maps.LatLng(37.09, -95.71); var options = { zoom: 5, center: latlng, mapTypeId: google.maps.MapTypeId.ROADMAP, disableDefaultUI: true, disableDoubleClickZoom: true, noClear: true, navigationControl: true, navigationControlOptions: { position: google.maps.ControlPosition.TOP_RIGHT } }; map = new google.maps.Map(document.getElementById('map'), options); var marker = new google.maps.Marker({ position: latlng, map: map, title: 'Click me', }); }
locations_controller.rb
def show @location = Location.find(params[:id]) respond_to do |format| format.html # show.html.erb format.json { render json: @location } end end
显示地图的页面:
<div id="map" onload="initialize();"> </div>
所以现在我想找到一种从map.js发出AJAX请求的方法,这样我就可以从Location模型中获取位置并将其传递给标记对象,以便当地图加载数据库中所有预先存在的位置时被传递给标记,这些标记就会出现。
谢谢。
哦,我找到了要获取位置列表的方法。控制器和视图保持不变。
我在map.js中添加了以下ajax,它为我完成了工作。
$.ajax({ type: "GET", dataType: "json", url: "/locations", success: function(data){} });
现在可以将数据传递到Google地图中的标记对象。