2013-03-20 39 views
1

我需要这样的工作:如果js.erb确认

Show.erb.js:

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

但代码的再培训局部分总是excecuting

任何想法?

回答

3

因为代码<%@current_cart.reset%>将在解释erb时执行。

你必须使用AJAX,如:

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