导轨的link_to:远程(rails link_to :remote)

2019-07-21 05:30发布

我有以下几点:

<%= link_to my_path, method: :delete, confirm: 'Delete?', class: 'link-delete', 'data-message' => 'Are you sure?', 'data-severity' => 'danger', :remote => true do %>
  <i class="icon-trash"></i>
<% end %>

它会弹出一个引导模态进行确认,我想钩住AJAX调用,这样我就可以显示一个微调或某些类型的文本。

我知道,我可以用不显眼的JavaScript来听,像这样的单击事件,如果我不使用:在我的link_to“远程=>真正的”

jQuery ->
  $('.link-delete').live 'click', (event) ->
    $('.link-delete').html("Loading...")  #THE MSG OR ANIMATION I WANT TO DISPLAY
    $.get(this.href, null, null, 'script')
   false

但不知道如何使用,当两者结合“:远程=>真正的”

有什么建议?

谢谢您的帮助

Answer 1:

您可以绑定到ajax调用是这样的:

<%= link_to my_path, method: :delete, confirm: 'Delete?', class: 'link-delete', 'data-message' => 'Are you sure?', 'data-severity' => 'danger', :remote => true do %>
  <i class="icon-trash"></i>
<% end %>

$('.link-delete').bind('ajax:beforeSend', function() {
  $('#mySpinner').show();
});

$('.link-delete').bind('ajax:complete', function() {
  $('#mySpinner').hide();
});


Answer 2:

你不需要把两者结合起来。 只需使用format.js来调用JavaScript。

在你的控制器:

调节器

 def my_method
     #code here
     respond_to do |format|
      format.js  {}
     end
    end

my_method.html.erb

<div id = "link-delete"></div>

my_method.js.erb

$("#link-delete").html("<%= escape_javascript(render(:partial => "text_message"))%>");

_text_message.html.erb

<p>Loading...</p>


文章来源: rails link_to :remote