1

私はこのようなものが必要です:

Show.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 に答える