在我看来的的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