使用 Gmaps4rails 通过 AJAX 调用渲染 Gmap

2023-12-02

这里有一些主题试图涵盖这一点:Gmaps4rails:动态加载时地图不显示尤其是这里:通过Ajax使用gmaps4rails渲染谷歌地图,还观看了动态更新 gmap 的截屏视频,但我似乎仍然无法使其工作。

仅当单击显示用户和报价之间方向的按钮时,我才尝试在下拉选项卡中加载地图。在我的 _location.html.erb 部分中,我有:

<%= gmaps({ "direction" => { "data" => { "from" => current_user.location, "to" => @offer.location } } })%>

(地点是地址)

现在,当立即渲染部分时,效果很好。然而,如果我在整个页面最初加载后尝试通过 AJAX 调用渲染部分内容,则不会显示 gmap。是否可以通过 AJAX 调用初始化并渲染 gmap 并显示方向?


原因很简单:该部分包含大量您无法以这种方式加载和执行的 JavaScript。

所以你不能在那里使用 RJS。

正确的方法是 UJS:通过 AJAX 调用获取数据并呈现结果。在下面的代码中,我使用 jQuery。

在您看来添加:

//include google script
<script type="text/javascript" src='http://maps.google.com/maps/api/js?sensor=false&libraries=geometry'></script>
//include gmaps4rails javascript
<%=javascript_include_tag 'gmaps4rails' %>

<script type="text/javascript" charset="utf-8">
//load map when button click (replace with what you want)
$('#ajax_map').click(function(){
  //you have to set a size to the div otherwise the map won't display, that's the purpose of these css classes
  $('#map_container').addClass('map_container');
  $('#gmaps4rails_map').addClass('gmaps4rails_map');
  //create the map object
  Gmaps4Rails.initialize();
  //of course, replace these two with your dynamic data, you'd have to use some $.ajax jQuery method.
  Gmaps4Rails.direction_conf.origin = 'toulon, france';
  Gmaps4Rails.direction_conf.destination = 'paris, france';
  //read the js file, you can customize much more: https://github.com/apneadiving/Google-Maps-for-Rails/blob/master/public/javascripts/gmaps4rails.js
  Gmaps4Rails.create_direction();
});
</script>

<div id="map_container"> 
  <div id="gmaps4rails_map"></div>
</div>

<button type="button" id="ajax_map">Ajax Map</button>

在 CSS 中添加以下类:

#map-container {
  width: 800px;
}

#gmaps4rails_map {
  width: 800px;
  height: 400px;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Gmaps4rails 通过 AJAX 调用渲染 Gmap 的相关文章

随机推荐

  • SQL复杂动态透视2

    您好 我正在尝试在 SQL Server 中进行下表的旋转 REFID COL1 COL2 Sequence 1 abc cde 1 1 lmn rst 2 1 kna asg 3 2 als zkd 2 2 zpk lad 1 我想要的输
  • 尽管有通用约束,C# 类型转换还是错误

    为什么在类 P 的类型参数 T 的泛型约束为 必须从 A 继承 的情况下 第一次调用会成功 但第二次调用会失败 并出现注释中详细说明的类型转换错误 abstract class A static class S public static
  • 三元条件中的意外标记中断

    下面的函数旨在以数组形式从 可能嵌套的 对象返回值 列表参数可以是任何对象 如果我将break语句移到for循环之后 我不会收到任何错误 但当然我的函数不会按需要运行 我使用break的方式有什么问题吗 function listToArr
  • Eclipse - 无法从“https://services.gradle.org/distributions/gradle-2.1-bin.zip”安装 Gradle 发行版

    我正在尝试在 Eclipse 中创建一个新的 gradle 项目 由于安全原因 Eclipse无法下载任何插件 软件 当我尝试创建 gradle 项目时 出现以下错误 无法找到请求目标的有效证书路径 可能 不安装 Gradle 发行版 ht
  • 定义我的轴的限制,但在两个方向上具有相同的比例[重复]

    这个问题在这里已经有答案了 我如何结合这些陈述 pyplot axis 1234 0 1773 0 497 0 1362 0 pyplot axis equal 我只想定义轴的限制 但在两个方向上具有相同的比例 PS 我试过了pyplot
  • 在 Python 中将 GET 请求代理到不同的站点

    我想将从客户端收到的 GET 请求转发到另一个站点 就我而言 m3u8 播放列表请求流媒体站点进行处理 有谁知道该怎么做 如果要代理 请先安装requests pip install requests 然后 获取服务器中的文件并提供内容 e
  • Solr 拼写检查:无法显示结果,总是收到相同的错误

    所以 我对 solr 还很陌生 也许我有很多理解问题 我现在想做的是对我的搜索栏的自动建议 例如 如果您写 glves 结果应该是 gloves 这是一个自动完成功能 现在运行良好 但是 当然 当我输入 glves 时 什么也没有出现 现在
  • android @Suppress 错误与 @TargetApi

    有时 我会为可能运行我的应用程序的某些 Android 版本编写代码 使用最新 Android 工具的 Eclipse 仍然注意到我的 Manifest 文档允许较低版本的 Android 因此判定我的代码中有错误 解决这个问题的方法是添加
  • AX的源文件存放在哪里?

    我想 仅 对 Dynamics Ax 2009 的源文件 即 XPO 源文件 运行定期 每 4 小时 备份 我想知道它们的物理存储位置 AX7 所有元数据都以 XML 形式存储 方法也存储在常规文件中 并存储在版本控制中 See 本概述 A
  • 如何为 Dash/Plotly 中的下拉菜单命名

    我对破折号还很陌生 我试图弄清楚如何将名称放置在下拉菜单和滑块上方 并在它们之间提供一些间隙 我在侧面而不是在下拉列表的顶部得到这些名称 数据集 模型类型 这是我一直在使用的代码 html Div className row childre
  • 如何使用 iTextSharp 将 HTML 转换为 PDF

    我想使用 iTextSharp 将以下 HTML 转换为 PDF 但不知道从哪里开始 p This em is em span class headline some span strong sample em text em strong
  • Arrays.binarySearch 无法正常工作

    我有字符串数组 1 2 3 我使用 Arrays binarySearch 搜索所有这些数字 它找到 1 和 2 但对于 3 它返回 1 知道为什么会这样吗 什么是比始终在数组 集合中进行搜索更好的替代方案 数组必须是有序的 String
  • 大矩阵的 SciPy 插值

    我有一个 ndarray Z 在矩形网格 X Y 上有大约 500000 个元素 现在我想在 x y 中的大约 100 个位置处插入值 这些位置不一定在网格上 我有一些在 Matlab 中运行的代码 data interp2 X Y Z x
  • str_extract 特定模式(示例)

    我对正则表达式语法仍然有点困惑 你能帮我解决这些模式吗 A00 A1234B A00 A12345B A1 A12345 到目前为止我的方法 vapply strsplit files function files files nchar
  • TPL队列处理

    我目前正在开发一个项目 我需要将一些作业排队进行处理 这是要求 作业必须一次处理一个 排队的项目必须能够等待 所以我想要类似的东西 Task
  • 在非不同索引上使用递归 cte 计算不同行

    给出以下架构 CREATE TABLE identifiers id TEXT PRIMARY KEY CREATE TABLE days day DATE PRIMARY KEY CREATE TABLE data id TEXT REF
  • 大型数据库文件的 SQLite 磁盘 I/O 错误

    在我的 C 程序中 我读取了大约 350GB 的压缩 CSV 文件 并将数据存储在 SQLite v3 数据库中 我在用着System Data SQLite来自 NuGet 我的数据库目前约为 147GB 在尝试运行下一个 INSERT
  • 如何将 ArrayList 保存在 Bundle 对象中

    Hi我需要帮助寻找存储方式 ArrayList
  • 添加新视图控制器的视图作为子视图

    我正在尝试以下操作 但未能添加新的视图控制器视图 这是呈现视图控制器的唯一方法吗 我们不能从其他故事板视图控制器视图添加视图吗 Working let vc UIStoryboard name Main bundle nil instant
  • 使用 Gmaps4rails 通过 AJAX 调用渲染 Gmap

    这里有一些主题试图涵盖这一点 Gmaps4rails 动态加载时地图不显示尤其是这里 通过Ajax使用gmaps4rails渲染谷歌地图 还观看了动态更新 gmap 的截屏视频 但我似乎仍然无法使其工作 仅当单击显示用户和报价之间方向的按钮