javascript显示当前options_for_select

时间:2010-10-25 11:52:36

标签: javascript ruby-on-rails

我需要将选择表的当前选择显示为弹出框,在index.rhtml中我有这个

<SCRIPT LANGUAGE="JavaScript">
function checkData()
{
var myTest = formid.table_id.options[formid.table_id.selectedIndex].value;
alert 'myTest';
}
</script>

<% form_tag :controller => 'project_controller', :action => 'actionfor_menu', :id=>'formid' do %>    
      <p>
      <select id="table_id" name="table_id" size="9">
        <%= options_from_collection_for_select(@monitors, 'id', 'name', @monitors.first.id) %>  
      </select>
      </p>
<% end %>

但是,每次我更改选择时,都没有任何反应,我也没有看到任何错误/警告。我是否需要在checkData函数中添加任何其他行以显示选择框的当前值?

谢谢

1 个答案:

答案 0 :(得分:0)

您的alert()电话应如下所示:

var myTest = formid.table_id.options[formid.table_id.selectedIndex].value;
alert(myTest);

要附加事件处理程序等,我会重新构建它,如下所示:

<% form_tag :controller => 'project_controller', :action => 'actionfor_menu', :id=>'formid' do %>    
  <p>
    <select id="table_id" name="table_id" size="9">
      <%= options_from_collection_for_select(@monitors, 'id', 'name', @monitors.first.id) %>  
    </select>
  </p>
<% end %>
<script type="text/javascript">
  document.getElementById("table_id").onchange = function () {
    alert(this.options[this.selectedIndex].value);
  };
</script>