Не удается открыть несколько диалоговых окон jquery ui в rails 3 - PullRequest
0 голосов
/ 10 мая 2011

помогите пожалуйста с помощью rails 3 и jquery-ui.На мой взгляд, у меня есть:

<div class="container">
    <div class="contents">
    <% @questions.each do |question| %><br />
       <li>
           <button class="opendialog">Delete</button>
           <div class="info" title="Delete Request">
               Question:<b><%= question.content %></b>
           </div>
       </li>
    <% end %>
    </div>
</div>

и в моем application.js у меня есть:

$(function() {
  $('.opendialog').each(function() {  
    $.data(this, 'dialog', 
      $(this).next('.info').dialog({
        autoOpen: false,
        modal: true
      })
    ); 
  }).click(function() {  
      $.data(this, 'dialog').dialog('open');
      return false;  
  });
});

Проблема, которая у меня возникает, заключается в том, что ни одно из диалоговых окон не открывается, когда я нажимаю на соответствующие кнопки.Код прекрасно работает в jsfiddle здесь , но мне не повезло в моем коде. Как я могу решить эту проблему. В моем приложении есть места, где я открываю отдельные диалоговые окна и работает нормально, просто этот код нехочу открывать диалоги, когда я нажимаю соответствующие кнопки.

Спасибо за помощь.

1 Ответ

0 голосов
/ 11 мая 2011

После некоторого поиска в Google я обнаружил, что неправильно загружаю таблицы стилей. Я включил файлы .js, как это

1). Создайте новый проект, пропустите прототип с -J:

rails new -J test -d mysql

2). Измените Gemfile, добавьте JQuery:

gem 'jquery-rails'

3). Обновление пакета:

bundle update rails

4). Генератор JQuery, --ui означает с пользовательским интерфейсом JQuery:

rails generate jquery:install --ui

5). Изменить config / application.rb:

config.action_view.javascript_expansions[:defaults] = %w(jquery jquery-ui rails application)

Обратите внимание, как в файле application.rb я загружал application.js.

Затем в моем файле application.html.erb я загружал в application.js вот так

<%= javascript_include_tag :defaults %>

Однако, просматривая источник моего html, я заметил, что application.js загружался дважды, вызывая конфликт.

В application.rb я изменил строку на:

config.action_view.javascript_expansions[:defaults] = %w(jquery jquery-ui rails)

перезагрузите сервер и все хорошо. Простая ошибка

...