Ruby on rails 如何使用gmaps4rails gem添加指向标记的链接

Ruby on rails 如何使用gmaps4rails gem添加指向标记的链接,ruby-on-rails,ruby,ruby-on-rails-3,google-maps,gmaps4rails,Ruby On Rails,Ruby,Ruby On Rails 3,Google Maps,Gmaps4rails,我想在marker中添加一个带有链接的marker,因此,当我单击该marker时,我将重定向到另一个页面 有人知道怎么做吗 谢谢 我已经添加了如下代码: 在控制器中: @json = @businesses.results.to_gmaps4rails do |object| "\"link\": \"#{root_url}\"" end 鉴于: <%= gmaps4rails(@json) %> <% content_for :scripts do %>

我想在marker中添加一个带有链接的marker,因此,当我单击该marker时,我将重定向到另一个页面

有人知道怎么做吗

谢谢


我已经添加了如下代码:

在控制器中:

@json = @businesses.results.to_gmaps4rails do |object|
  "\"link\": \"#{root_url}\""
end
鉴于:

  <%= gmaps4rails(@json) %>
  <% content_for :scripts do %>
    <script type="text/javascript">
      function redirect_to(url) {
        window.location = url;
      };
      Gmaps4Rails.callback = function() {
        function say_yo(arg) { return function(){alert('yo '+ arg + '!' );};};
        for (var i = 0; i <  Gmaps4Rails.markers.length; ++i) {
          google.maps.event.addListener(Gmaps4Rails.markers[i].google_object, 'click', redirect_to(Gmaps4Rails.markers[i].link));
        }
      }
    </script>
  <% end %>

函数重定向到(url){
window.location=url;
};
Gmaps4Rails.callback=函数(){
函数say_yo(arg){return function(){alert('yo'+arg+'!');};};
对于(变量i=0;i
有什么不对吗?因为只有一个信息窗口在我点击标记后显示(没有重定向到任何页面)


首先在json中包含链接:

Model.all.to_gmaps4rails do |object|
  "\"link\": \"your link as string\""
end
然后在视图中添加额外的侦听器(注意在调用gmaps方法后包括此侦听器):


函数重定向到(url){
window.location=url;
};
Gmaps4Rails.callback=函数(){
函数say_yo(arg){return function(){alert('yo'+arg+'!');};};
对于(变量i=0;i
您好,谢谢您的回答。但我收到错误消息Gmaps4Rails未在代码部分Gmaps4Rails.callback=function(){中定义。为什么会发生这种情况?因为您必须在调用Gmaps4Rails后,在“content_for:scripts”中编写此函数。在我编辑这个问题后,你能回答我的新问题吗?因为链接仍然无法重定向到其他页面,我尝试调试@json结果,并且没有链接数据。下面是结果:{\n“description\”:\“A-ABC Locksmith
7063 W Belmont Ave\,“title\”:“\”,“sidebar\”,\n“经度\:“-87.8037\,“latitude\”:“41.938\”\“picture\”:\“\”,“width\”:\“\”,“height\”:\“\”\n}我已经将我的gem版本更新为0.10.2,但是当我为:script添加内容时,页面总是重定向到根路径,而我的url是/listStackoverflow不是论坛。问题是问题,答案是答案。若要为问题添加更多信息,您应该编辑问题。请查看。
<%= gmaps(whatever you need here) %>

<% content_for :scripts do %>
<script type="text/javascript">
function redirect_to(url) {
  window.location = url;
};
Gmaps4Rails.callback = function() { 
  function say_yo(arg) { return function(){alert('yo '+ arg + '!' );};};
    for (var i = 0; i <  Gmaps4Rails.markers.length; ++i) {
      google.maps.event.addListener(Gmaps4Rails.markers[i].google_object, 'click', redirect_to(Gmaps4Rails.markers[i].link));
    }
}
</script>
<% end %>