Откройте всплывающее окно в Rails по ссылке - PullRequest
1 голос
/ 13 января 2012

Я хочу открыть всплывающее окно при нажатии на ссылку, затем показать там некоторые данные и закрыть их.

Я использую ссылку для создания ссылки.Часть кода выглядит так:

<%= link_to 'Display Links', :controller=>'aaa', :action=> 'xyz_links', ....... %>

Ответы [ 2 ]

3 голосов
/ 13 января 2012

Ранее, в rails2.3.x вы могли просто сделать:

link_to "foo", foo_path(foo), :popup => true

Но теперь в Rails3 эта опция устарела

Другой вариант - использовать ненавязчивый способ Rails 3
делегирование этих ссылок:

Сначала добавьте атрибут "data-popup" к вашему link_to, если вы хотите его открыть
в новом окне

Тогда, если вы используете адаптер jquery, добавьте в application.js внутри документа
готовый обработчик:

$('a[data-popup]').live('click', function(e) { 
    window.open($(this).attr('href')); 
    e.preventDefault(); 
}); 

Или с адаптером-прототипом, используйте этот код внутри документа, готового
обработчик:

document.on("click", "a[data-popup]", function(event, element) { 
    if (event.stopped) return; 
    window.open($(element).href); 
    event.stop(); 
}); 

Вы можете найти такое же обсуждение здесь: http://groups.google.com/group/rubyonrails-talk/browse_thread/thread/e1f02d9e0977071b/814d69e4d56cea65?show_docid=814d69e4d56cea65&utm_medium=twitter&pli=1

0 голосов
/ 13 января 2012

Я не пробовал это, но есть в рубиновых документах:

<%= link_to name, url, :popup => ['dialog name','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes'] %>

Пожалуйста, проверьте на

http://apidock.com/rails/ActionView/Helpers/UrlHelper/link_to#29-Window-open-a-dialog-of-no-menu-no-status-have-scroll

...