首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在通过AJAX加载包含Gmaps.loadMaps的Gmaps4Rails的HTML/JS时,是否有使用Gmaps4Rails的替代方法?

在通过AJAX加载包含Gmaps.loadMaps的Gmaps4Rails的HTML/JS时,是否有使用Gmaps4Rails的替代方法?
EN

Stack Overflow用户
提问于 2011-09-14 04:58:39
回答 1查看 823关注 0票数 1

我在通过Ajax加载的表单主体中使用Gmap4Rails。表单中有一些自定义字段,其中一些可能是我在处理表单的非Ajax版本时使用的位置选择器。

使用Ajax版本的表单,我得到了"Gmaps.my_map_id“未定义的错误。

在表单的非Ajax版本中,我将Gmaps.loadMaps通过JavaScript在HTML页面的头部调用为"window.onload“,这是Gmaps4Rails的通常做法。

但是,这在Ajax的上下文中是行不通的,因为映射在window.onload时还没有定义。

在我的表单中,我还为每个Gmap映射对象定义了一个回调。这似乎是“未定义”错误的失败之处,即使在我在由Ajax加载的代码中定义第一个回调之前直接执行“Gmaps.loadMaps()”脚本时。

基本上,按照代码顺序是这样的:

循环中的

  1. ,调用gmaps4rails分部以在该循环完成后输出每个映射自定义字段
  2. ,Gmaps.loadMaps()在另一个循环中被调用一次
  3. ,每个Gmap映射对象都有用于回调的JS,添加了

对如何让这件事奏效有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2011-09-14 17:29:47

更新:可能只是部分正确(即我确实遇到了这里概述的问题,但调用Gmaps.loadMaps()仍然不起作用)。

第二次更新:我不得不改变load_的定义.在Gmap对象上,然后相应地更改Gmaps.loadMaps函数。我已经向https://github.com/apneadiving/Google-Maps-for-Rails/pull/94的项目提出了一个拉请求。

Gmaps.loadMaps()调用不是问题所在。所以没有必要有其他选择。让我感到震惊的是,在部分enable_js中被调用为false,而声明Gmaps4RailsGoogle的新实例和加载函数的JavaScript没有被调用。

我有一个自定义版本的部分,在我的情况下,即使enable_js (我解释为“不加载我的应用程序的javascript库文件”)是假的,我仍然做JavaScript声明新的Gmaps4RailsGoogle实例并定义load_.函数。

尽管如此,load_.功能似乎不适合我。在我的例子中,它带回来了以下几点:

TypeError:“未定义”不是函数(计算‘窗口“load_”+ key')

当我给load_打电话时..。函数直接从控制台(而不是Gmaps.loadMaps调用)得到一个类似的错误:

代码语言:javascript
代码运行次数:0
运行
复制
"'undefined' is not a function (evaluating 'this.load_...()')"

可能与没有声明任何标记有关?任何关于这个问题的暗示都很感激。

如果我在负荷中跨过台阶..。函数,引发错误的第一个位是.initialize()。还在调查。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7411443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档