在Rails 4中,如何調整以下控制器,視圖和局部視圖,以便當我單擊"Update Time"
提交按鈕時,id爲'search_results'
的html div會更新爲由_results.html.erb
生成的內容部分?Rails 4 form_tag部分更新元素
我在一段時間內沒有使用過Rails,我似乎記得它在Rails 1中做起來非常簡單。我在Rails 4中找到的文檔似乎涉及JQuery,我不熟悉並且不明白將其綁定到這種形式。
我有一個讀通過這個:http://edgeguides.rubyonrails.org/working_with_javascript_in_rails.html
但還是不完全明白是怎麼回事。
RuleSearchController.rb
class RuleSearchController < ApplicationController
def index
end
def results
end
end
index.html.erb
<%= form_tag('/rule_search_results', :id => 'search_form') do %>
<%= submit_tag "Update Time" %>
<% end %>
<div id='search_results'>
<%= render partial: "results" %>
</div>
_results.html.erb
<%= Time.new %>
更新 目前的答案是做一些奇怪的事情。它的工作原理,當我有東西在_results.html.erb
這是一個簡單的襯裏,如:
<%= Time.new %>
但是,如果我這樣做,因爲這簡單的東西:
<%= Time.new %>
<hr />
雖然沒有錯誤上來控制檯上,沒有任何反應,搜索結果div不會更新。
進一步更新 我可以遍歷AR對象的數組,並有自己的名字印在所提供的div我這樣做是在一個像像下面的search_results,它是文件中唯一的行:
<% for rule in rules do %><%= rule.name %><% end %>
以下但不工作
<% for rule in rules do %>
<%= rule.name %>
<% end %>
謝謝,這偉大工程,到底是什麼我需要。我真的需要進入JS的東西,並正確地學習它,但我現在不需要太多的東西了。在你的回覆中有一個缺失的括號,我編輯它以備日後任何人查詢此問題。 – Axiombadger
當results.html.erb中的代碼不是簡單的一行,一個html標記文件時,此答案正在做一些奇怪的事情。有關詳細信息,請參閱更新問題 – Axiombadger
我已經說過這是正確的,因爲它確實如我原先所要做的那樣,這可能需要另外提出一個問題。 – Axiombadger