将固定项添加到 select2

Add fixed item to select2

我在 rails

中使用 select2 gem

gem版本:3.5.9.3 选择 2 版本:3.5.2

Haml 视图:

= form_tag('cards/search/', method: :get, remote: true, class: 'navbar-form navbar-right') do
  .form-group
    = hidden_field_tag :q, '', id: 'search', class: 'form-control',
      style: 'width: 250px;',
      data: { 'ajax-url' => search_path, placeholder: 'placeholder' }

在 coffeescript 文件中

$ ->
  $('#search').select2
    minimumInputLength: 1
    ajax:
      dataType: 'json'
      delay: 250
      data: (params) ->
        q: params
      results: (data) ->
        results: data.q

如何在选项底部添加固定项目?无论我在搜索表单中输入什么。

我试过了:

$('#search').append{id: 'test', text: 'test'}

但是没有看到那个选项。

我想到的两个解决方案是:

  1. select2 创建装饰器。 哪个 IMO 是一项非常繁琐的任务,因为我发现并没有关于如何做到这一点的任何文档。 我发现对我有帮助的最好的资源是 Kvein Brown 对此主题的回复:

    https://groups.google.com/forum/#!topic/select2/s4hAHyBrYqc

  2. 另一种方法,如果您只在页面上使用一个 select2,这可能是最简单的方法,就是监听 select2 的打开事件,然后然后只需使用 jQuery 在您想要的位置附加一个元素。