我的应用程序允许用户制作包含不同类别的列表。在制作列表时,如果用户决定他们想要另一个类别,他们可以在不离开页面的情况下创建一个。新类别将显示在列表中,用户可以开始向其添加项目。
我的问题似乎是将任何Rails助手(link_to,render)添加到我的'new.js.erb'文件中,它会阻止脚本执行此操作。我的新div和下拉菜单没有呈现。我在控制台或服务器日志上没有错误。根本不值一提。如果我删除这些方法,一切正常。
function addCategory(){
var lastCategory = '<%= current_user.categories[-2].name %>';
console.log(lastCategory);
$('#' + lastCategory).after("<h3 class='category'><%= @category.name %></h3>\
<div class='dropdown-button' data-toggle='collapse' data-target='#<%= @category.name %>'>\
<span class='glyphicon glyphicon-chevron-down'></span>\
</div>\
<div id='<%= @category.name %>' class='collapse'>\
<h4>Create a new item here:</h4>\
<div id='append<%= @category.id %>'></div>\
<%= link_to 'Home', root_url %>\ //does not work!
</div>");
}
这只是link_to和其他似乎导致问题的方法。所有其他erb标签&lt;%=%&gt;似乎工作和适当渲染。
我的目标是在这个新呈现的下拉列表中呈现一个表单和一个链接,但由于问题的根源似乎是一般的Rails方法,为了清楚起见,我添加了一个link_to home。
答案 0 :(得分:1)
Damnit,我明白了。忘记将'j'添加到我的rails帮助器以将它们转换为JavaScript
<%= j link_to "Home", root_url %>