如何在rails中将.js.rjs的内容转换为.js.erb

时间:2013-12-24 04:14:23

标签: javascript ruby-on-rails rjs

我在create.js.rjs文件中使用了以下行。我刚从互联网上复制并且工作得很好。

page.select("#notice").each { |notice| notice.hide }

page.replace_html('cart', render(@cart))

page[:cart].visual_effect :blind_down if @cart.total_items == 1

page[:current_item].visual_effect :highlight,
                                  :startcolor => "#88ff88",
                                  :endcolor => "#114411"

但是现在我需要在create.js.erb文件中使用这两行代码。 .rjs和.erb的语法不相同。那么这两个linces的.erb文件的代码是什么。

1 个答案:

答案 0 :(得分:0)

尝试:

# js.erb

$("#notice").hide()
$("#cart").html("<%= j render(@cart) %>")

<强>更新

找到this code in book Agile Web Development with Rails

js.rjs

page[:cart].visual_effect :blind_down if @cart.total_items == 1

page[:current_item].visual_effect :highlight,
                                  :startcolor => "#88ff88",
                                  :endcolor => "#114411"

等效js.erb

$('#current_item').css({'background-color':'#88ff88'}).
  animate({'background-color':'#114411'}, 1000);

我有点觉得你所关注的代码会在链接的书中详细讨论,所以我建议你看一下这本书。