1

我有一个包含越来越多的相关 javascript 的表单。目前,这个 javascript 存在于我的表单视图中,这很好,但它变得越来越大,并且开始压倒表单,使得在表单上工作变得困难。

我想把它放在我的 /public/javascripts 目录中的一个单独的文件中,但是很多 javascript 是由嵌入式 ruby​​ 生成的。如果我只是将代码放在这里,这个嵌入的 ruby​​ 将被忽略并传递给浏览器。

执行此嵌入式 ruby​​ 并以与我认为相同的方式生成 javascript 的最佳方式(如果有的话)是什么?

4

2 回答 2

2

您可以为 javascript 创建动态 erb 模板,但它们不在 public/javascripts 目录中。

我建议您将 javascript 移动到部分中。创建一个名为 _form_js.html.erb 的文件并将脚本标签的内容放在那里。然后 <%= render :partial => 'form_js' %> 从你的角度来看。

附带说明一下,您最好使用完全静态的 javascript,通过它们的类/id 识别表单元素并对此做出反应,而不是为每个元素使用自定义 javascript。

于 2010-04-28T02:41:27.977 回答
1

您可以创建 RJS 模板并将您的 Javascript 代码分组到 RJS 文件中。参考: http: //www.codyfauser.com/2005/11/20/rails-rjs-templates

于 2010-04-28T02:18:39.463 回答