javascript - 在 js 部分内渲染 html 部分会导致崩溃

标签 javascript ruby-on-rails partial

当尝试在 js 部分中渲染 html 部分时,我遇到了一个相当奇怪的错误

在我的索引页中,我有:

<% content_for :head do %>
  <script type="text/javascript">
    <%= render :partial => "index", :formats => [:js] %>
  </script>
<% end %>

这是 _index.js.erb 文件

$(function(){
<% if @badge %>
$('#badge').html("<%= j render :partial => "badge1", :badge=> @badge, :user =>     current_user %>");
$('#badge').show().delay(3000).fadeOut(2000);
<% end %>
$('#Container_2').mixItUp();
$('#Container_2').mixItUp('sort', 'myorder:desc');
});

当我进入索引页面时,它给出错误“缺少部分索引”。日志显示index.js.erb已被渲染。 但是,如果我删除 _index.js.erb 文件中的第 3 行,它就可以正常工作。

所以,即使我以某种方式弄乱了徽章部分(我怀疑我做了),为什么它说当这条线存在时它找不到整个部分?

最佳答案

您的问题在于无法正确渲染 badged1 部分。请尝试以下操作:

确保 @badge 和 current_user 具有值。

'badge1',本地人:{徽章:@badge,用户:current_user})%>

关于javascript - 在 js 部分内渲染 html 部分会导致崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25247297/

相关文章:

javascript - 如何显示宽度为 :100% in Chrome 的表格

ruby-on-rails - 禁用关于方法的 Rubocop 投诉

ruby-on-rails - 如何在不同于 3000 的端口中启动 WEBrick

ruby-on-rails - 为什么我的中间件会泄漏内存?

jquery - Rails jquery formtastic 部分 => 未定义方法 'inputs'

c++ - struct - 部分初始化跳过中间组件

javascript - 通过javascript函数返回的变量是 'undefined'

javascript - 如何从哈希数据中删除 # 符号?查询?

ruby-on-rails - 我应该对 Rails 弃用警告感到害怕吗?

javascript - 使用 Vue.js 的导航栏