2013-05-28 20 views
0

在我的Rails项目中,用于排序<li>元素列表的旧jQuery代码已损坏。该记录的错误是:在Rails中调试jQueryUI版本

TypeError: $.ui.isOverAxis is not a function 

我认为罪魁祸首是,jQuery的ui.js(v1.9.2的)不想要的,旧版本使它成为我的头,我不知道如何将其删除。

不需要的jQuery文件来自jquery-rails宝石。我不明白为什么,因为我已经从我的application.js文件中删除了//= require jquery-ui行。

这是我目前的application.js文件:

//= require moment.min.js 
//= require nicEdit.js 
//= require jquery 
//= require jquery_ujs 
//= require jquery.ui.all 
//= require_tree . 

我的Gemfile被更新到最新版本的jquery-rails宝石(2.2.1)和jquery-ui-rails宝石(4.0.3)的。

然而,旧版本的jQuery(1.9.2)在我的头文件中出现的发展模式:

<script type="text/javascript" src="/assets/jquery-ui.js?body=1"></script> 

通过在开发模式下的调试,我可以告诉大家,jQuery的ui.js文件来自jquery-rails宝石。

有关如何解决此问题的任何建议?

UPDATE

我已经更新的问题,以反映我的发现:jQuery的ui.js文件,实际上,从jquery-rails宝石来。

回答

1

看来,ActiveAdmin呼吁//= require jquery-ui,其又在jQuery的ui.js文件甩开jquery-rails

该文件正在从jquery-ui-rails中剔除jQueryUI的版本。

长期的解决方案可能是为jquery-rails删除jquery-ui.js文件,或者至少重命名它。

在短期内,我通过删除//= require jquery.ui.all并完全依赖jquery-rails,完全跳过jquery-ui-rails来解决我的问题。