繁体   English   中英

Rails-用户单击提交按钮时如何更新表中的数据

[英]Rails - How update data in table when user clicks on submit button

我正在使用Rails 3.2,并在此页面上显示一个带有结果列表的表,该表通过@jobs变量传递给视图,该变量是SQL查询的结果,我想在此页面上添加一个按钮,以便当用户单击它时,将调用控制器操作,该操作将执行一些数据库工作,然后使用最新结果刷新表。

我是JS和AJAX的新手,并且Rails非常环保,因此我不知道如何执行此操作。

我创建一个像这样的按钮:

<%= form_tag( "controller/get_job", class: "text-center", id: "get-job-form" ) do %>
<%= submit_tag "Get Job", id:"get-job-submit", class: "button" %>
<% end %>

认为它将调用我的控制器的get_job动作。 但是我不希望此操作导致新页面,我只想“刷新”用户已经在页面内的表。

我的控制器动作类似于:

def get_job
  job = find_job
  job.employee = me
  job.save
  # Here I want to refresh the table so that this new job shows up in   the table
end

我是否需要一些javascript脚本来执行此操作,还是仅通过调用控制器操作然后再调用render就能做到?

我很迷路,感谢您的帮助! 谢谢。

您可以使用javascript替换页面上的表格。 您可以从AJAX请求中获取新表及其数据。 这可能对您有帮助: https : //blog.codeship.com/unobtrusive-javascript-via-ajax-rails/

做AJAX必须有3个步骤

  1. 客户端向服务器发送了请求

  2. 服务器处理来自客户端的请求,并将结果发送到客户端。

  3. 客户端收到服务器的响应。 构建新的DOM HTML。

本文也许可以帮助您了解ajax的工作原理

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM