在我看來的的onchange調用JavaScript函數,我有以下幾點:期間選擇框
<%= 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」作爲一個附加參數,並把它裏面的一個:選擇或:include_blank參數哈希不會產生一個錯誤,但它不工作,要麼
什麼結束了對新的和編輯工作:
<% 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 %>
我會測試這個 – EastsideDeveloper 2012-07-18 15:24:05
它爲我工作。編輯也起作用:<%= select(「panel」,::event_id,events_ids_titles_hash,{:selected => @ panel.event_id},{:include_blank => true,:onchange =>「alert_me_test()」})% >有一個問題:警報被調用兩次。有任何想法嗎? – EastsideDeveloper 2012-07-18 15:54:56
我假設你在腳本中使用了事件處理。在這種情況下,您可以從:html哈希中刪除:onchange =>「alert_me_test()」。否則,他們都會被觸發。 – AdamCooper86 2012-07-18 16:35:19