我正在学阿贾克斯,这很棒,但我在执行它时遇到了一些困难。 当用户点击按钮#rem_req_btn时,我想调用fadeOut元素#group_box。我的阿贾克斯不起作用
我的代码只适用于我的列表的第一个元素,但不是其他的。我试图在div中添加组标识,但不起作用。
任何人都可以帮助我找到更好的方法来实现此操作?
指数组:
<% @my_groups.each do |group| %>
<div id="group_box">
<%= render 'group', group: group %>
</div>
<% end %>
_group:
<div class="col-md-3">
<div class="panel panel-default">
<div class="panel-heading">
<h3 style="margin-top:5px; text-align:center">
</h3>
</div>
<div class="panel-body">
Test
</div>
<div class="panel-footer" style="height: 50px; padding:7px;">
<div class="btn btn-default">
<i class="fa fa-tasks" aria-hidden="true"></i>
</div>
<%- unless group.main? %>
<%= link_to rem_req_group_path(group), method: :patch, data: {confirm: "Etes vous sur de vouloir sortir de ce groupe ?"}, id: "rem_req_btn", remote: true do %>
<div class="btn btn-danger pull-right">
<i class="fa fa-sign-out" aria-hidden="true"></i>
</div>
<% end %>
<% end %>
</div>
</div>
</div>
阿贾克斯文件:
$('#rem_req_btn').bind('ajax:success', function() {
$(this).closest('#group_box').fadeOut();
});
嗨,@AmitPatel,谢谢你的回答,这真的很清楚。我遵循你的解释,它的工作!我的错误是忘记我的文件中的.erb。所以我的阿贾克斯不明白<%@group.id%> 谢谢大家,祝你有美好的一天 –