1

我需要这样的东西才能工作:

显示.erb.js:

if (confirm('Delete cart?')) { 
  <%@current_cart.reset%>
  $('.cartbadge').replaceWith('<%= j render :partial => "layouts/cartbadge"%>');
}

但代码的 erb 部分总是在执行

有任何想法吗?

4

1 回答 1

3

因为代码<%@current_cart.reset%>会在 erb 被解释的时候执行。

你必须像这样使用ajax:

if (confirm('Delete cart?')) { 
  $.post('<%= reset_cart_path(@current_cart) %>', function() {
      $('.cartbadge').replaceWith('<%= j render :partial => "layouts/cartbadge"%>');
  });
}
于 2013-03-21T00:13:22.737 回答