Javascript 在Rails 3中,将.js.erb文件放在哪里
我有一些小的javascript,如果它们是.erb的一部分,即foo.js.erb的一部分,那么它们就更容易、更清晰了。我应该把这些文件放在哪里?如果我将相关的行放在.html.erb文件中,我可以看到我的代码运行良好,但这可能不是一个好主意。换句话说,这不是一个好主意:Javascript 在Rails 3中,将.js.erb文件放在哪里,javascript,ruby-on-rails-3,erb,Javascript,Ruby On Rails 3,Erb,我有一些小的javascript,如果它们是.erb的一部分,即foo.js.erb的一部分,那么它们就更容易、更清晰了。我应该把这些文件放在哪里?如果我将相关的行放在.html.erb文件中,我可以看到我的代码运行良好,但这可能不是一个好主意。换句话说,这不是一个好主意: <script> $(function() { $('#reports').bind('show', function(e) { if ($(e.target).attr('id') ==
<script>
$(function() {
$('#reports').bind('show', function(e) {
if ($(e.target).attr('id') == 'reports-navlist')
$.ajax({
url: '<%= program_reports_path(@program) -%>',
data: { toggle: "tab" },
success: function(html){
$("div#report-html-content").html(html);
}
})
});
});
</script>
<div class="container">
<div class="row">
<div class="span2">
<ul class="nav nav-pills nav-stacked" id="reports">
<li>
<a href="#" data-toggle="pill">Trend lines for all questions</a>
</li>
<li>
<a href="#" data-toggle="pill" id="reports-navlist">Summart of all queries</a>
</li>
<li class="active">
<a href="#" data-toggle="pill">Trend lines for all questions</a>
</li>
<li>
<a href="#" data-toggle="pill">Details on all questions</a>
</li>
</ul>
</div>
<div class="span10" id="report-html-content">
</div>
</div>
</div>
$(函数(){
$(“#报告”).bind('show',function(e){
if($(e.target).attr('id')=='reports navlist')
$.ajax({
url:“”,
数据:{切换:“选项卡”},
成功:函数(html){
$(“div#report html content”).html(html);
}
})
});
});
-
-
-
-
这里的最佳实践是什么?谢谢大家! 只需将同一个控制器的名称目录与您正在调用的动作名称JS放在一起。这与放置一个html.erb文件是一样的,它不是由某个动作触发的,特别是,我真的希望它成为一个视图的一部分。即,相当于将其逐字放入.html.erb文件。您是否在控制器代码中处理格式响应?你能发布你的
程序报告吗
动作代码是用controller编写的吗?我可以,但同样,如果我把js直接放在html.erb文件中,效果很好。但无论如何,你是说当我从js脚本调用program_reports_path(@program)时运行的控制器吗?是的,你可以发布你调用的方法,不需要整个控制器的代码。