将两个相同的select2表单添加到同一页面中

问题描述 投票:3回答:3

我正在尝试将两个select2 multi-value select boxes添加到我的Rails应用程序中。

顶部的形式很好,但是底部的形式不起作用。

我尝试过更改ID和添加新的js代码,但没有成功。我根本缺少什么错吗?

Index.html

# This one works fine
<div class="search_genre">Genre:</div>
<div class="select2-container select2-container-multi populate">
    <select multiple="" name="e9" id="e9" style="width:300px" class="populate select2-offscreen" tabindex="-1" placeholder="Search or Select">
       <optgroup label="Popular">
           <option value="Alt">Rock</option>
           <option value="Ind">Indie</option>
           <option value="Ind">Alternative</option>
           <option value="Ind">Acoustic</option>
       </optgroup>
      </select>
</div>


# This one doesn't show a text input or the optiongroup values
<div class="search_region">Region:</div>
<div class="select2-container select2-container-multi populate">
    <select multiple="" name="e9" id="e9" style="width:300px" class="populate select2-offscreen" tabindex="-1" placeholder="Search or Select">
       <optgroup label="Local">
           <option value="PDX">Greater Portland</option>
           <option value="OR">Oregon</option>
           <option value="WA">Washington</option>
       </optgroup>
      </select>
</div>

application.js

$("#e9").select2();
javascript jquery ruby-on-rails ruby-on-rails-4 jquery-select2
3个回答
7
投票

您不能有两个具有相同id的元素。改用类。

两个选择都具有id="e9"而不是尝试向class="my-select"元素中添加<select>之类的东西。

然后做$('.my-select').select2();


0
投票

好,这是基本的东西!

id都一样。这对我来说似乎很奇怪,这是我更改以查看是否可行的第一件事。我向ID为#e10的application.js添加了一个新的jquery代码,并相应地更改了第二个表单的ID。昨天,这没有用。但是,今天确实如此。我一定错过了一些愚蠢的事情,例如保存页面...

我希望您允许删除答案。


-1
投票

对于同一页面中的每个select2,您必须为标签“ data-select2-id”定义唯一的ID。

data-select2-id="Project"

data-select2-id="WBSDate"
© www.soinside.com 2019 - 2024. All rights reserved.