В Rails 3 есть ненавязчивый способ сделать это с помощью плагина jQuery:
http://github.com/rails/jquery-ujs
После того, как вы загрузили это в свой макет (с jQuery 1.4.1 или новее), вы можете довольно легко выполнять такие взаимодействия.
<%= link_to 'delete', item, :remote => true, :method => :delete,
:confirm => 'Are you sure?' %>
В Rails 3 все, что это делает, это добавляет некоторые атрибуты HTML к вашей ссылке. Они ловятся живыми обработчиками в плагине jQuery. Это поведение легко использовать в приложении на Rails 2, однако:
<%= link_to 'delete', item, :'data-remote' => true, :'data-method' => :delete,
:'data-confirm' => 'Are you sure?' %>
Обратите внимание, что вам нужно загрузить плагин jQuery в вашем представлении.
http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to
Если вам нужно, чтобы начальный ответ был модальным, а не предупреждением, вы можете сделать первую ссылку немного проще:
<%= link_to 'delete', modal_confirm_item_url(item), :'data-remote' => true %>
Вы можете связать его с каким-либо ранее существующим действием члена. Или, поскольку вы, возможно, захотите использовать ответы .js от этих действий для обслуживания других запросов ajax, может иметь смысл создать новое действие для обработки этого поведения.