javascript - Rails AJAX 删除功能有效但在刷新之前不会自行删除

标签 javascript jquery ruby-on-rails ajax

我正在尝试使用 AJAX 和 :remote => true 在我的 link_to 上删除

删除工作正常,收到 200 个响应,并且当页面刷新时项目不再存在。

[2014 年 7 月 30 日 11:26:57]“删除/credit_cards/12198 HTTP/1.1”200 - 0.2106

我需要它动态发生,当单击按钮时,列被删除。

我的观点,这个位于 app/views/spree/checkout/payment

.cc-expiration.two.columns.alpha.omega
        %span.mobile-heading.em

        = link_to (image_tag("icons/delete.png")),
            spree.credit_card_url(card),
            :remote => true, :method => :delete,
            :confirm => 'Are you sure?',
            :class => 'delete_card'

Controller :

def destroy
  @card = Spree::CreditCard.find(params["id"])
  @card.destroy

  respond_to do |format|
    format.html { redirect_to credit_cards_url }
    format.json { head :no_content }
    format.js   { render :layout => false }
  end
end

最后是我的 destroy.js.erb,位于 app/views/spree/credit_cards

$('.delete_card').bind('ajax:success', function() {
        $(this).closest('column').fadeOut();
});

非常感谢任何帮助,非常感谢!

最佳答案

由于您使用的是 destroy.js.erb, View 文件由 ajax 响应返回,并照此执行。所以你不需要将任何东西绑定(bind)到 ajax 回调,只需执行你的代码:

// destroy.js.erb
$('.delete_card').closest('column').fadeOut();

关于javascript - Rails AJAX 删除功能有效但在刷新之前不会自行删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25041068/

相关文章:

ruby-on-rails - rack-rewrite -rails3.2 -heroku - 重定向硬编码图像 url

javascript - 我如何访问 Angular 服务中的范围

javascript - 从上面的元素获取值

ruby-on-rails - 常规 ActionController::InvalidAuthenticityToken 异常 - Rails

javascript - 在外部单击时关闭弹出 div

jquery - 使用 JQuery 将焦点设置在基于 CSS 类的文本框上

ruby-on-rails - 如何 self [:name] works rails

javascript - 为什么 Express 模块没有安装在其默认目录中,例如 npm\node_modules?

Javascript 转换一个接一个

javascript - 使用 $(this)。 (".className") 访问类的特定实例