0

我试图让它当用户从下拉列表中选择“白色”时,div 的背景图像变为白色图像,当他们选择“红色”时,它变为红色图像等。

我不得不使用咖啡脚本,因为我也在使用最好的宝石。我是coffeescript的新手,所以它可能是一个语法错误,但任何帮助将不胜感激!

user.js.coffee.erb:

jQuery ->
  $('.best_in_place').best_in_place()
  $('#background').css("background-image", "url("/assets/images/<% @user.background %>.jpg")")

图像存储在 assets 中的 images 文件夹中。js.coffee.erb 文件存储在 assets 中的 javascripts 文件夹中。我收到以下错误:

nil:NilClass 的未定义方法“背景”

蒂亚!

4

1 回答 1

0

我认为你不可能那样做。在生产环境中,这些 javascripts 应该被预编译,然后作为静态文件。它们不会在每次请求时更改以向不同的用户显示不同的背景。

一个可能的解决方案是设置@user.backgroundbackground标签的一个类。

于 2012-11-16T13:13:58.313 回答