我有以下选择列表。
<%= select_tag(:editlevel,options_from_collection_for_select(Level.all, :id, :name)) %>
当用户从上面的列表中选择一个选项时,下面的列表应该根据上面的选择填充数据库中的值。
<%= select_tag(:lques,{},{ :size =>10, :style => "width:200px"}) %>
我想我应该使用带有onchange事件的remote_function。但我不知道如何使用它并填充后者列出数据库中的值。有人能帮帮我吗?
答案 0 :(得分:2)
我解决这个问题的一个简单方法是:
<select id="editlevel" name="editlevel" onchange="
<%= remote_function(
:update => 'lques',
:url => {:action => :lques},
:with => "'level=' + $('editlevel').value %>
">
</select>
<select id="lques" name="lques">
</select>
然后你的lques行动可以得到你需要的lques记录并做options_for_select
并且它应该把从服务器返回的内容作为$('lques').innerHTML
这是航空代码,尚未经过测试。