我想实现一些东西。要发送给用户的电子邮件吗?是或否单选按钮。并且只有当单选按钮说是。如果下面的文字允许此人填写要发送的电子邮件内容。这就是我对电子邮件内容的看法,但我不知道如何使它依赖于按钮。
<div align="center">
Open orders?
Yes
<%= f.radio_button :orders_open, true, :class=>"radio-control"%>
No
<%= f.radio_button :orders_open, false, :class=>"radio-control"%>
</div>
<br>
<div align="center">
Email users?
Yes
<%= f.radio_button :email_users, true, :class=>"radio-control"%>
No
<%= f.radio_button :email_users, false, :class=>"radio-control", :checked => true %>
</div>
<br> <br>
<div class="control-group">
<label class="control-label">
<%= f.label :email_content, "Note to users" %>
</label>
<% if @application_state.orders_open %>
<div class="controls">
<%= f.text_area :email_content %>
</div>
<% else %>
<div class="controls">
<%= f.text_area :email_content %>
</div>
<% end %>
</div>
答案 0 :(得分:1)
使用JavaScript,您可以轻松完成。 选择更改单选按钮时绑定事件,并根据所需条件启用或禁用email_content文本区域。
<input type="radio" id="no" name="email_users"/>
<input type="radio" id="yes" name="email_users"/>
<textarea rows="4" cols="50" id="email_content">
</textarea>
使用jQuery解决问题:
jQuery("input[name=email_users]").change(function (e) {
if(this.id === "yes") {
jQuery("#email_content").attr('disabled', 'disabled');
}
else if(this.id === "no"){
jQuery("#email_content").removeAttr('disabled');;
}
}