簡體   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