使用AJAX删除项目
我的application.js
//= require rails-ujs
//= require activestorage
//= require turbolinks
//= require jquery3
//= require jquery_ujs
//= require_tree .
$('[data-js-task-id]').on("ajax:success", function(event, data, status, xhr){
var task_id = xhr.responseJSON.id;
$('[data-js-task-id=' + task_id + ']').hide();
});
我的index.html erb
<li data-js-task-id=<%= task.id %> class="task">
<%= link_to task.title, task, class: "task-title text-dark ml-2" %>
<%= link_to '', task, remote: true, method: :delete, class:"far fa-trash-alt text-dark icon delete", title: "Delete" %>
</li>
我的任务控制器
def destroy
@task.destroy
render json: @task
end
错误删除项目,不要隐藏...
答案 0 :(得分:1)
您应该在任务控制器中更改它
respond_to do |format|
format.js
end
代替render json: @task