【问题标题】:rails js.erb does not get renderedrails js.erb 没有被渲染
【发布时间】:2013-07-06 12:31:14
【问题描述】:

我在edit.html.erb中有以下代码

    <%= f.select(:newpages, @pages, { :include_blank => 'No newpage' }, :id => 'function', :multiple => true, :size => '7', :selected => @selected ) %>

我有另一个代码在 edit.js.erb 中使用 jquery-multiselect,但它没有被渲染。

$('#function').multiSelect()

我已经阅读了 railcasts 教程并按照说明进行操作,但我不明白为什么它不起作用。

我的控制器是这样的:(我还没有把它格式化成js)

  def edit
    @print = Print.find(params[:id])
 #   @print.blackwhites.build
    @pages = (1..(@print.number_of_images_entry)).to_a
  end

【问题讨论】:

  • 你的JS控制台有错误吗?
  • 我得到 ReferenceError: $ not defined

标签: ruby-on-rails ruby-on-rails-3 jquery ruby-on-rails-3.2


【解决方案1】:

似乎由于某种原因,JQuery 在这次解析中是未知的,因此 $ 符号是未知的

  1. 确保您使用的是 宝石'jquery-rails' 在你的 gem 文件中

  2. 确保包括 //= 需要 jquery 在你的 application.js 中

希望对你有帮助

【讨论】:

  • 我的 Gemfile 中有 jquery-rails 并且在此之前 //=require jquery 但它似乎并没有解决问题。从源代码中,我看到加载 erb 后加载了 jquery。
  • 答案在这里:stackoverflow.com/questions/13193905/… 现在没有错误,但我的 jquery 函数不起作用,即使我看到它正在加载。
猜你喜欢
  • 1970-01-01
  • 2016-12-30
  • 1970-01-01
  • 2023-03-11
  • 2021-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-08
相关资源
最近更新 更多