Html 如何使用复选框标记在Haml中选中复选框
有人能告诉我如何将这些复选框设置为选中吗?我相信这很简单,但经过一个小时的尝试,我想我需要问一下!谢谢Html 如何使用复选框标记在Haml中选中复选框,html,ruby,checkbox,haml,Html,Ruby,Checkbox,Haml,有人能告诉我如何将这些复选框设置为选中吗?我相信这很简单,但经过一个小时的尝试,我想我需要问一下!谢谢 = form_tag movies_path, :id => 'ratings_form', :method => :get do Include: - @all_ratings.each do |rating| = rating = check_box_tag "ratings[#{rating}]", = submit_tag 'Refresh'
= form_tag movies_path, :id => 'ratings_form', :method => :get do
Include:
- @all_ratings.each do |rating|
= rating
= check_box_tag "ratings[#{rating}]",
= submit_tag 'Refresh', :id => 'ratings_submit'
参考号
您的第二个参数
必须是复选框的值
您的
第三个参数
必须是一个布尔条件
,该条件返回真/假
,并且取决于它复选框是选中/未选中的在行尾使用真表示选中或假表示未选中
check_box_tag "ratings[#{rating}]", true #checked
或
根据api dock,复选框标记采用以下选项:
复选框\标记(name,value=“1”,checked=false,options={})
这意味着第一个值是名称,第二个值是“值”,第三个值是复选框是否选中,默认为false。因此,要选中或取消选中该框,您可以执行以下操作:
- if (some condition)
= check_box_tag "ratings[#{rating}]", "anystring", true
- else
= check_box_tag "ratings[#{rating}]"
第二行只是将一个随机字符串放入值字段中,因为在这种情况下,它并不重要
check_box_tag "ratings[#{rating}]", 1, @selected.include?("#{rating}")
其中@selected
是一个包含所选元素的数组。基于SAI的答案。奇怪的是,复选框标记
返回一个没有标签文本的复选框。下面是在数组上迭代时如何显示文本
= check_box_tag "ratings[#{rating}]",{},{:checked => ""}
- Puppies.each do |puppy|
= check_box_tag(puppy.name, puppy.name, puppy.goodboy?)
= puppy.name
欢迎来到SO!你能补充一些解释吗?顺便说一句,如果你参加,你将获得你的第一枚闪亮徽章;)对于rails 5,我只看到
= check_box_tag "ratings[#{rating}]",{},{:checked => ""}
- Puppies.each do |puppy|
= check_box_tag(puppy.name, puppy.name, puppy.goodboy?)
= puppy.name