select2 自动选择标签

问题描述 投票:0回答:1

我正在使用 select2 并且一切正常。 现在我想创建一个带有标签选项的 select2 输入字段:

$(document).ready(function() {

$('.dropdown').val(null).trigger("change");

$('.dropdown').select2({
        language: "de",
        width: "100%",
        placeholder: '',
        allowClear: true,
        tags: true
    });
});
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/select2.min.css" rel="stylesheet"/>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js"></script>




<select class="dropdown" name="state">
  <option value="AL">Alabama</option>
  <option value="WY">Wyoming</option>
</select>

我的问题: 如果您将键入“Te”(“测试”),它将自动选择选项“Alabama”。 这不应该。这是一个错误还是我该如何解决?

javascript jquery jquery-select2
1个回答
0
投票

这是因为您提供的

tags: true
选项中的
select2
tags
用于创建新选项(如果它们以前不可用),您可以选择它们并将它们添加到列表中。如果你不选择新输入的选项,它默认选择第一个。

因此,如果您希望用户仅从可用选项中进行选择,请删除

tags
选项。

$(document).ready(function() {
  $('.dropdown').val(null).trigger("change");
  $('.dropdown').select2({
    language: "de",
    width: "100%",
    placeholder: '',
    allowClear: true
  });
});
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/select2.min.css" rel="stylesheet" />

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js"></script>



<select class="dropdown" name="state">
  <option value="AL">Alabama</option>
  <option value="WY">Wyoming</option>
</select>

© www.soinside.com 2019 - 2024. All rights reserved.