Rails 3.2.1资产目录中的javascripts无法正常工作

时间:2012-04-29 23:25:05

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

奇怪的是我无法触发属于assets / javascripts目录中不是application.js文件的* .js文件中的javascript。例如,如果我创建一个新的rails 3.2.1应用程序,并插入以下内容:

index.html.erb

<%= link_to "click", "javascript:", :onclick => "call_function();" %> 

将我的函数转换为javascript文件“anyscript.js”:

function call_function () {
  alert("hello2");
}

仅当javascript被放入application.js文件而不是其他任何地方时,警报功能似乎才有效。我的application.js文件有require_tree。所以它应该加载目录中的所有脚本。但如果函数位于单独的文件中,则无效。

我可以将所有的javascript放在应用程序文件中,但这显然不太理想。有人遇到这个问题??

2 个答案:

答案 0 :(得分:0)

确保正确加载目录中的脚本并确保require_tree命令正确无误。在开发模式下,验证是否加载了相关脚本。如果是,则在单击链接时将运行。唯一的理由不是它是否超出范围或未定义。

答案 1 :(得分:0)

好的,你确定anyscript.js文件包含在JS清单文件中,a.k.a application.js?