我有一个简单的表格,我用它来过滤一个学生表。通过使用f.collection_check_boxes,我得到了一个丑陋的复选框段落。我想有一个下拉列表,让我可以一次选择多个复选框。
我现在的代码是
.card-header.d-flex.align-items-center
%span Listing Students
= link_to 'New Student', new_student_path, class: 'btn btn-outline-secondary ms-auto'
%button.btn.btn-outline-secondary.dropdown-toggle.mr-2#filter-button{"type": "button", "data-bs-toggle": "dropdown", "aria-expanded": "false"}
Filter
%ul.dropdown-menu{"aria-labelledby": "filter-button"}
%li
= simple_form_for :filter, url: filter_students_path, method: :post do |f|
= f.input :givenname
%div
= f.collection_check_boxes(:course_ids, Course.all, :id, :course_code)
= button_tag 'SELECT', type: 'button', class: 'select_btn'
%br
%div
= f.collection_select(:location_ids, Location.all, :id, :location_name, multiple :true)
= button_tag 'SELECT', type: 'button', class: 'select_btn'
%br
%div
= f.collection_check_boxes(:sector_ids, Sector.all, :id, :sector_name)
= button_tag 'SELECT', type: 'button', class: 'select_btn'
%br
= f.submit 'Search'
= link_to 'Reset', students_path
它产生了一个按钮,当点击有一个下拉菜单的多组选项,以过滤由即时通讯测试不同的方法,现在只有一个选项,所以collection_select结果在一个列表,允许我检查多个当我点击+ shift键,但我希望这些是一个下拉的复选框,而不是一个列表。
1条答案
按热度按时间z0qdvdin1#
根据这个答案,我会在你的下拉列表中使用列表:Rails collection_check_boxes - wrap each checkbox with
我不使用HAML,所以我不能给予你一个明确的例子,但类似于:
请注意应用于的样式,以防止向
<li>
元素添加项目符号。