[英]Trigger JS function on pageload when populating select box from database
[英]populating select box from controller function in Rails
我有一個帶有選擇框的Rails Web應用程序:
<%= select_tag :foo %>
我正在尋找在控制器中編寫一個函數,該函數將使用一些值填充此選擇框。 為此,我需要編寫什么代碼?
該函數是使用observe_field調用的:
<%= observe_field :foo, :url => { :action => :populate } %>
如果將值硬編碼到函數中就可以了。
def populate
# what goes here?
end
謝謝!
試試這樣的東西...
在您的application_helper.rb中,放入以下內容:
$MEMBERROLE = ['Student', 'Coach', 'Staff', 'Administrator']
然后,在您看來,您可以輸入以下內容:
<p>
<%= f.label :role %><br />
<%= f.select(:role, options_for_select($MEMBERROLE.collect{|x| [x, $MEMBERROLE.index(x)]}, @member.role)) %>
</p>
假設您有一個類似於以下內容的Member模型:
create_table "members", :force => true do |t|
t.string "name"
t.integer "role"
end
那是一種簡單的死法。 您也可以將角色作為單獨的表使用,但我認為這對於您要查找的內容來說是過大的...
我認為您誤解了observe_field
功能。 當字段更改時,它將執行一些javascript。 如果您可以為我們提供更多詳細信息,那就太好了。
例如,您是否要嘗試根據您在另一個字段中選擇的內容來更改選擇中的值?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.