加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 将一个依赖于值的数据属性添加到simple_form复

发布时间:2020-12-16 21:16:38 所属栏目:百科 来源:网络整理
导读:我正在为单个集合生成一个复选框列表,如下所示: = f.input :parts,as:check_boxes,collection: @parts_list 我希望集合中的一些复选框消失/重新出现,具体取决于表单中较高的选择窗口小部件的值. (例如,从机器人选择中选择“跟踪器机器人”意味着“腿”部件
我正在为单个集合生成一个复选框列表,如下所示:
= f.input :parts,as:check_boxes,collection: @parts_list

我希望集合中的一些复选框消失/重新出现,具体取决于表单中较高的选择窗口小部件的值. (例如,从机器人选择中选择“跟踪器机器人”意味着“腿”部件复选框消失,并出现“轮子”复选框等)

我想要做的是将计算数据属性附加到每个单独的零件复选框,其属性值列出可以使用该零件的机器人;然后一些JS会做隐藏/显示复选框的工作.但是,我不知道如何使用simple_form生成这些数据属性.

我通常会创建一个自定义的“部件”输入,但是在制作自定义集合输入时似乎存在问题;它在form_builder.rb中查找一个命名方法(collection_parts),它不会存在,如果我尝试扩展FormBuilder,它会向我发送一个主要的兔子洞.

我可以写一些JS来将数据加载到生成的HTML中,但是我必须根据我的Rails数据生成自定义JS,这感觉就像是错误的方法.

解决方法

我想你可以这样做:
= f.input :parts do
  = f.collection_check_boxes :parts,@parts_list,:id,:to_s,item_wrapper_tag: :label,item_wrapper_class: :checkbox do |b|
    - b.check_box(data: { YOUR DATA ATTRIBUTES HERE }) + b.text

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读