使用AJAX删除rails项目

问题描述 投票:0回答:1

无法使用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

项目删除有错误,请勿隐藏...

jquery ruby-on-rails ajax
1个回答
1
投票

您应该在任务控制器中更改此设置

respond_to do |format|
 format.js 
end 

而不是render json: @task

© www.soinside.com 2019 - 2024. All rights reserved.