jquery - Ajax在Rails 4中重新加载div内容错误+哪里放置远程: true

标签 jquery ruby-on-rails ajax ruby-on-rails-4

我正在尝试定期刷新屏幕上的 div。 div 位于我的index.html.erb 中,如下所示

<div id="shared_tasks_div">
<ul>
  <% @canEditTasks.each do |elem| %>
     <div class="draggable">    
     some code to put elem values in <p>
     </div>
  <% end %>
    <% @canView.each do |elem| %>
    <div class="draggable">    
     some code to put elem values in <p>
    </div>
<% end %>
</ul>
</div>

在我的任务 Controller 中我添加了以下代码

  def index
    @tasks = current_user.task
    @canEditTask = some query
    @canView = another query
    respond_to do |format|
      format.js { render :div_tasks }
    end
  end

我在我的 app/views/tasks 中创建了以下 js div_tasks.js.erb

$("#shared_tasks_div").html("<%= j(render('index', :canEditTasks=> @canEditTasks)) %>");
$("#shared_tasks_div").html("<%= j(render('index', :canView=> @canView)) %>");

我现在必须发出 a) 我应该把 remote: true 放在哪里 b) 我从索引方法中收到以下错误

ActionController::UnknownFormat
    respond_to do |format|
      format.js { render :div_task }

我确实看到了以下两篇文章,并将一些建议整合到我的解决方案中,但并没有解决问题 Rails 4 ajax update div Rails 3 - Update div content with Ajax and jquery (nested resources)

感谢您的帮助

最佳答案

尝试向您的index.html.erb 文件添加定期的javascript ajax 调用。 JavaScript 应包含对任务 Controller 中索引方法的 ajax 调用(dataType:脚本将确保 format.js)。

您可以使用此处概述的方法: How to fire AJAX request Periodically?

关于jquery - Ajax在Rails 4中重新加载div内容错误+哪里放置远程: true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19351669/

相关文章:

javascript - IE 中的 AJAX 计时

jquery - 如何使用授权 header 发出 GET CORS 请求

javascript - 通过 AJAX 的 PHP 请求失败

javascript - jQuery - jQGrid - 展开、折叠网格行上的子网格单击

javascript - 在页脚中加载时从外部 JS 文件运行函数

javascript - 如何修复滚动条上的div

jquery - 滑出式菜单 - 在过渡时隐藏水平滚动条

mysql - 我可以按预定顺序加载 ActiveRecord-Objects 吗?

ruby-on-rails - 恢复生产数据库备份的一部分

ruby-on-rails - 如何在 Rails 功能测试中发送原始发布数据?