轨道上的单选按钮红宝石

时间:2010-09-11 02:48:03

标签: ruby-on-rails radio-button

我想知道是否有办法使用单选按钮来设置作为文本框的字段的值。

    <%= radio_button("demographics_questionaires", "gender", "Male")%> Male <br\>
    <%= radio_button("demographics_questionaires", "gender", "Female")%> Female <<br\>
    <%= radio_button("demographics_questionaires", "gender", "Other")%> 
    Other <%= f.text_field gender %> 

上面的代码不正确,但是就行了。

如果选择了其他单选按钮,我希望将性别设置为text_field的值?不确定你是如何做这种关联的?

实施例

[单选按钮]男

[单选按钮]女

[单选按钮]其他__________________

其中____________是要输入的文本框。

最后如果用户选择男性,我希望数据库中存储的值为“男性”,女性为“女性”,或者是其他用户输入的值。

我有点想处理视图中的所有逻辑。这是可能的还是必须在控制器中完成?

任何建议表示赞赏,

1 个答案:

答案 0 :(得分:0)

检查此代码。它可能会帮助你

<%= form_for @user do |f| %>
  <%= f.radio_button :email, 'male' %> male<br />
  <%= f.radio_button :email, 'female' %> Female<br />
  <%= f.radio_button :email, 'others' %> others<br />
  <%= f.hidden_field :email  %>
<% end %>

jquery脚本

<script type="text/javascript">

$("input[type='radio']").change(function(){ 
    if ($('input[type="radio"]:checked').val() == "others")
    {
        $('input[type="hidden"]').val('')   
        $('input[type="hidden"]').prop("type", "text");
    }
    else if ($('input[type="radio"]:checked').val() != "others")
    {
        $('input[type="hidden"]').prop("type", "hidden");
        $('input[type="hidden"]').val($('input[type="radio"]:checked').val())
    } 
});