2010-10-17 98 views
0

我想製作一個簡單的嵌套動態菜單,其中子類別將根據我在類別中選擇的內容顯示。但是,爲了使它非常簡單,我只是想在子類別中呈現相同的東西,無論我選擇「Home」還是「Job」(主要是顯示「顯示相同」的文本)rails動態菜單的observe_fields

In index。 RHTML我有此

<html> 
<head> 
     <%= javascript_include_tag :defaults %> 
</head> 
<body> 

<select id="categories" name="categories"> 
    <option value="1">Home</option> 
    <option value="2">Job</option> 
</select> 

<%= observe_field "categories", :update => "subcategories", 
:url => { :controller => "hello", :action => "getsubcategories" } %> 

<select id="subcategories" name="subcategories"> 
    <option> 
    </option> 
</select> 

</bod> 
</html> 

對於控制器,我這個

class HelloController < ApplicationController 

def index 
end 

def getsubcategories 
    puts "Got inside the controller" 
end 

end 

和getsubcategories.rhtml,僅存在1線

<option value="<%= subcategory.id %>"><%= "show the same" %> 

它顯示指向layout.erb的錯誤,該錯誤無法在子類別菜單上正確呈現。我認識到這個錯誤很可能在getsubcategories.rhtml中,但我嘗試了幾種不同的方法,並且仍然是同樣的錯誤。

我該如何解決這個問題?謝謝你的任何指導

回答

0

您需要desactivate佈局,這個動作

def getsubcategories 
    render :getsubcategories, :layout => false 
end 
+0

啊謝謝!我還有一個問題,是否可以通過使用第一個表中的某些參數來更新第二個選擇表。例如,選擇表1(來自數據庫)具有鏈接到選擇表2(再次來自數據庫)的鍵值。我從選擇表1中選擇了1個選項,而在選擇表2中,只顯示與選擇表1具有相同鍵的數據庫中的選項? – heike 2010-10-18 10:31:40

+0

如果我的回答很好,請接受它。如果你還有其他問題。提出了一個新問題。 – shingara 2010-10-18 11:33:05

+0

是的。謝謝。 – heike 2010-10-18 12:29:13