Ruby form表单单选框和复选框

复选框是一种表单控件,给用户一些选项,可用于启用或禁用某项功能。

<%= check_box_tag(:pet_dog) %>
<%= label_tag(:pet_dog, "I own a dog") %>
<%= check_box_tag(:pet_cat) %>
<%= label_tag(:pet_cat, "I own a cat") %>

 生成的 HTML 如下:

 

 

 

<input id="pet_dog" name="pet_dog" type="checkbox" value="1" />
<label for="pet_dog">I own a dog</label>
<input id="pet_cat" name="pet_cat" type="checkbox" value="1" />
<label for="pet_cat">I own a cat</label>

 

 check_box_tag 方法的第一个参数是 name 属性的值。第二个参数是 value 属性的值。选中复选框后,value 属性的值会包含在提交的表单数据中,因此可以通过 params 获取。

 

 

 

 

单选框

单选框有点类似复选框,但是各单选框之间是互斥的,只能选择一组中的一个:

 

<%= radio_button_tag(:age, "child") %>
<%= label_tag(:age_child, "I am younger than 21") %>
<%= radio_button_tag(:age, "adult") %>
<%= label_tag(:age_adult, "I'm over 21") %>

 生成的 HTML 如下:

 

 

 

 

<input id="age_child" name="age" type="radio" value="child" />
<label for="age_child">I am younger than 21</label>
<input id="age_adult" name="age" type="radio" value="adult" />
<label for="age_adult">I'm over 21</label>

 check_box_tag 方法一样,radio_button_tag 方法的第二个参数也是 value 属性的值。因为两个单选框的 name 属性值一样(都是 age),所以用户只能选择其中一个单选框,params[:age] 的值不是"child" 就是 "adult"

注意:复选框和单选框一定要指定 label 标签。label 标签可以为指定的选项框附加文字说明,还能增加选项框的点选范围,让用户更容易选中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值