Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 选择2多个选择不起作用_Ruby On Rails_Jquery Select2_Select2 Rails - Fatal编程技术网

Ruby on rails 选择2多个选择不起作用

Ruby on rails 选择2多个选择不起作用,ruby-on-rails,jquery-select2,select2-rails,Ruby On Rails,Jquery Select2,Select2 Rails,我想做的是让用户先选择一个组合类型,例如3个项目组合或2个项目组合,然后让他们在第二个选择中选择项目。因此,第二个选择是多选,允许用户选择2或3个项目 我正在使用带有多个选项的select2。但它不起作用。当Select2连接到一个元素时,它表示不允许使用选项“multiple”。有人能帮我使用select2吗 <script type="text/javascript"> $(document).ready(function() { $('select#box_name').c

我想做的是让用户先选择一个组合类型,例如3个项目组合或2个项目组合,然后让他们在第二个选择中选择项目。因此,第二个选择是多选,允许用户选择2或3个项目

我正在使用带有多个选项的select2。但它不起作用。当Select2连接到一个元素时,它表示不允许使用选项“multiple”。有人能帮我使用select2吗

<script type="text/javascript">
$(document).ready(function() {
  $('select#box_name').change(function() {
    var dish_id = $(this).find('option:selected').val();
    $.read(
      '/dishes/{dish_id}/get_assoc_items.json',
      { dish_id: dish_id },
      function (data) {
        var options = ''
        $.each(data, function(idx, item) {
          options = options + '<option value="'+item.id+'">'+item.name+'</option>'
        });
        var select = $('select#box_assoc_items')
        $('option', select).remove();
        select.append(options);
      }
    );
  });
});

$(document).ready(function() {
  $('select#box_assoc_items').select2({
    placeholder: 'choose items',
    multiple: true
  });
});
</script>

<%= simple_form_for([@restaurant, @order, @box]) do |f| %>
  <%= f.input :name, :collection => @dishes %>
  <%= f.input :assoc_items, :collection => [[]], :input_html => {:maxlength => 2, :style => 'width:400px'} %>
  <%= f.input :price %>
  <%= bootstrap_button(f, "Add a dish") %>
<% end %>

无法将多个元素应用于选定元素,必须使用隐藏元素

<input type="hidden" id="question" name="question" style="width: 70%;">

@迭戈的回答对我没有帮助,但我的案例可能会帮助有同样问题的人:


谢谢,迭戈。我意识到了。我知道这将是一个不同的话题,但不知道你是否知道答案。现在,我必须在select2中获取json响应。因为在“/dishs/{dish_id}/get_assoc_items.json”中,dish_id需要由前面的select填充。如何从上一次选择中获取所选值?然后如何向其添加选项?