event_calendar gem没有方法'观察'

时间:2012-11-24 17:14:39

标签: javascript ruby-on-rails calendar gem

我正在使用gem在网站上实现活动日历。这是event_calendar gem

我在chrome中遇到以下错误:

Uncaught TypeError: Object function Event() { [native code] } has no method 'observe'

它在event_calendar.js的第6行生成:

Event.observe(window, "load", function() {

关于什么是错误的任何想法?


我有一个名为Event的模型,所以我怀疑它可能会以某种方式干扰JS,但我无法在我的代码中找到它。

我觉得很奇怪的是,事件日历是有效的,有事件和所有事件。这可能是重复的一些问题吗?再一次,我找不到任何迹象。

1 个答案:

答案 0 :(得分:2)

抱歉,我可能会有点迟到,我刚遇到同样的问题,并设法解决了这个错误。

event_calendar gem为不同的Javascript库实现了几个不同的实现。 默认情况下,当您运行

rails generate event_calendar

它不会生成你的rails应用最有可能使用的jquery实现。

Event.observe模式是prototype.js函数。除非你的rails应用程序首先在event_calendar gem之前包含prototype.js,否则它将会中断。

要解决您的问题,如果您使用jquery作为默认的JavaScript库,则可以运行

1. rails generate event_calendar --use-jquery

2. then replace the app/assets/javascripts/event_calendar.js with the generated public/javascripts/event_calendar.js.

希望它有所帮助。