RoR select_tag选择的值

时间:2010-08-11 13:04:15

标签: ruby-on-rails

我正在使用select_tag,我希望在href :onchange

中传递所选值

我无法获取所选值

请指导我如何获取所选值并传入href

我正在使用以下代码

<%= select_tag "name", 
   options_for_select(@user.names.map {|c| [c.firstname,c.id]}),
   :onchange =>"document.location.href='/names/value'" %>

href='/names/**value**代码中,我必须传递选定值

由于

3 个答案:

答案 0 :(得分:0)

我不确定你的问题,但你可以试试这个:

<%= select_tag "name", options_for_select(@user.names.map {|c| [c.firstname,c.id]}),:onchange =>"document.location.href='/names/'+this.value" %>

因此,在onchange事件期间使用所选值。

答案 1 :(得分:0)

试试这个

<%= select_tag "name", 
   options_for_select(@user.names.map {|c| [c.firstname,c.id]}),
   :onchange => "document.location.href=/names/ + $(this).value" %>

答案 2 :(得分:0)

我认为建议的方法j和kiva不起作用,因为javascript组件在初始阶段被渲染(写入静态html文件),rails是服务器端,并且他们的帖子中建议的更多是客户端。

我实现了这样 - &gt;

添加onchange =&gt; myJavaScriptFunction()

然后在javascript函数中编写url更改() 使用纯JavaScript,没有铁路参与。

这是我的片段 -

<%= select_tag :clientid, options_for_select(@options),
      :include_blank => false,
      :onchange => "myfunction(this)"
                %>

  function myfunction(combo_box)
  {
    //var combo1 = document.getElementById('clientid');

    var value1 = combo_box.options[combo_box.selectedIndex].text;
    var value2 = combo_box.selectedIndex;

    document.getElementById('session_dump').innerHTML='<hr>'+value2 + '::::=> ' + value1+'<hr>';

  }

希望它有用......