在我看来,我有以下几点:
<%= select("event", :event_id, events_ids_titles_hash, { :include_blank => true, :onchange => "alert_me_test()" }) %>
alert_me_test() 是:
<script type="text/javascript">
function alert_me_test()
{
alert ("this is a test")
}
</script>
下拉列表看起来不错,但是当我从中选择时,什么也没有发生。我期待一个带有“这是一个测试”的警报框。
编辑案例:
当我进行编辑时,我有以下代码:
<% if @panel.event_id %>
<%= select("panel", :event_id, events_ids_titles_hash, {:selected => @panel.event_id}, { :include_blank => true}) %>
我的 IDE(RubyMine)不想接受“onchange”作为附加参数,并将其放在 :selected 或 :include_blank 参数哈希之一中不会产生错误,但它也不起作用
最终适用于 new 和 edit 的内容:
<% if @panel.event_id %>
<%= 'Event is ' + events_ids_titles_hash.key(@panel.event_id) %>
<%= select("panel", :event_id, events_ids_titles_hash, {:selected => @panel.event_id}, { :include_blank => true, :onchange => "alert_me_test()"}) %>
<% else %>
<%= 'Select Event from list' %>
<%= select("event", :event_id, events_ids_titles_hash, { :include_blank => true }, { :onchange => "alert_me_test()" }) %>
<% end %>