cgi*_*omi 37 javascript ajax ruby-on-rails link-to
我有以下内容:
<%= 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 %>
Run Code Online (Sandbox Code Playgroud)
它会启动一个Bootstrap Modal进行确认,我想挂钩ajax调用,以便我可以显示一个微调器或某种文本.
我知道我可以使用不引人注目的javascript来监听点击事件,如果我不在我的link_to中使用':remote => true'
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
Run Code Online (Sandbox Code Playgroud)
但是在使用':remote => true'时不确定如何将两者结合起来
有什么建议?
谢谢您的帮助
Arj*_*jan 71
你可以像这样绑定到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();
});
Run Code Online (Sandbox Code Playgroud)
My *_*God 11
你不需要将两者结合起来.只需使用format.js来调用javascript.
在你的控制器中:
调节器
def my_method
#code here
respond_to do |format|
format.js {}
end
end
Run Code Online (Sandbox Code Playgroud)
my_method.html.erb
<div id = "link-delete"></div>
Run Code Online (Sandbox Code Playgroud)
my_method.js.erb
$("#link-delete").html("<%= escape_javascript(render(:partial => "text_message"))%>");
Run Code Online (Sandbox Code Playgroud)
_text_message.html.erb
<p>Loading...</p>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
50797 次 |
| 最近记录: |