rails使用html form,Rails 页面多选下拉框, form_for, form_tag 使用技巧及 select2 使用
时间: 2024-05-14 11:19:20 浏览: 135
使用HTML Form以及Rails的form_for和form_tag可以方便地创建表单,其中包括多选下拉框。下面是一些使用技巧:
1. 使用form_for创建表单:
```
<%= form_for @model do |f| %>
<%= f.select :attribute, options_for_select([["Option 1", 1], ["Option 2", 2], ["Option 3", 3]], @model.attribute), {}, multiple: true %>
<%= f.submit "Submit" %>
<% end %>
```
其中,options_for_select可以为选项提供一个数组,第一个元素是选项的标签,第二个元素是选项的值。在这个例子中,我们创建了一个多选下拉框,它会将选中的值存储在@model.attribute中。
2. 使用form_tag创建表单:
```
<%= form_tag some_path do %>
<%= select_tag :attribute, options_for_select([["Option 1", 1], ["Option 2", 2], ["Option 3", 3]], params[:attribute]), {}, multiple: true %>
<%= submit_tag "Submit" %>
<% end %>
```
这个例子中,我们使用form_tag创建表单,并创建了一个多选下拉框,它会将选中的值存储在params[:attribute]中。
3. 使用select2插件:
select2是一个快速创建具有搜索功能的下拉框的jQuery插件。要使用它,首先需要将它添加到项目中:
```
# application.js
//= require select2
# application.css
*= require select2
*= require select2-bootstrap
```
然后,可以使用下面的代码创建select2下拉框:
```
<%= f.select :attribute, options_for_select([["Option 1", 1], ["Option 2", 2], ["Option 3", 3]], @model.attribute), {}, multiple: true, class: "select2" %>
<script>
$(document).ready(function() {
$('.select2').select2();
});
</script>
```
在这个例子中,我们将select2应用于多选下拉框,它会在下拉菜单中添加搜索框,并使用户能够更容易地查找选项。
希望这些技巧对你有所帮助!
阅读全文