2012-01-08 2 views
5

Я использую Rails 3.1 и имею проблему с библиотекой jQueryUI. Вот мой application.js файл:Rails 3.1, jQuery UI не загружается

//= require jquery 
//= require jquery-ui 
//= require jquery_ujs 
// Loads all Bootstrap javascripts 
//= require bootstrap 
//= require rails.validations 

//= require_tree . 

Он загружает файл «JQuery интерфейса» в браузере, но все, что я использую связанные с ней он показывает эту ошибку:

TypeError: Object function (a,b){return new d.fn.init(a,b,g)} has no method 'dialog' 

ответ

2

После нескольких часов боролись с выпуск, я, наконец, удалил //= require jquery-ui с application.js и добавил новый пользовательский интерфейс jQuery, и теперь все работает отлично. Мой новый файл актив:

//= require jquery 
//= require jquery/jquery-ui 
//= require jquery_ujs 
// Loads all Bootstrap javascripts 
//= require bootstrap 
//= require rails.validations 

//= require_tree . 

jquery является подпапка в моей javascripts папке.

3

Я имел те же проблемы, application.js выглядел следующим образом:

//= require jquery 
//= require jquery_ujs 
//= require jquery-ui 

В режиме разработки, кажется /assets/application.js содержал версию JQuery в комплекте с UJS, и при добавлении к странице, это было так :

<script src="jquery"></script> 
<script src="jquery_ujs"></script> 
<script src="jquery-ui"></script> 
<script src="application.js"></script> 

Последний файл был заменой первых трех файлов. Я положил:

//= require_self 
//= require jquery-ui 

и он отлично работает.

Самое смешное, что application.js содержит только require строк, без jQuery или ujs.

+1

Не знаете, почему/как/когда я удалил 'require_self' для начала, но добавив его в начало, исправил мою проблему. Благодаря! – umezo

2

Возможно, вы предварительно скомпилировали свои активы в более раннем периоде. Попробуйте удалить все подкатегории public/assets.

Смежные вопросы