Rails 3.2.11
我按照了这个宝石的说明:https://github.com/crowdint/rails3-jquery-autocomplete。当我加载我想要拥有自动完成字段的页面时,Jquery,jquery-ui,autocomplete-rails.js等都被加载。但是,在加载页面时,我在错误控制台中得到了这个:
TypeError:'undefined'不是函数(评估'this.live')
我解压缩了js文件,这是被引用的函数:
(function(jQuery)
{
var self = null;
jQuery.fn.railsAutocomplete = function() {
return this.live('focus',function() {
if (!this.railsAutoCompleter) {
this.railsAutoCompleter = new jQuery.railsAutocomplete(this);
}
});
};
任何人都知道发生了什么事吗?由于我没有在任何地方使用'$',noConflict选项似乎并不重要,无论哪种方式都无法解决问题。我没有对autocomplete-rails.js进行任何更改
奇怪的是,我发誓这在某种程度上正在发挥作用,但我不能为我的生活弄清楚改变了什么来打破它。
答案 0 :(得分:0)
是的,事实证明我有一个错误的javascript_include_tag,它加载了另一个jquery副本。这就是问题
答案 1 :(得分:0)
我相信原始海报自己的答案也是我的解决方案的一部分。使用rails 3.2.13,jquery 1.9.0和jquery-ui 1.9.2。更完整我也:
在前3个步骤之后,仍然存在损坏的行为(在每个步骤之后我仅重新启动服务器)。最后一步是出于懒惰,但幸好表明上述组合起作用。