我正在尝试定期刷新屏幕上的 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/