删除我的下拉菜单中的打字功能

问题描述 投票:0回答:2
<select class="" id="js-select2" multiple="multiple">
          <option>1</option>
<option>1</option>
        </select>

    $('#js-select2').select2({
      placeholder: "Select your option",
      allowClear: true
    });

我使用它来创建带有选项的下拉菜单,选项显示正确,但选择允许用户键入和搜索。我希望它是一个简单的按钮,箭头向右对齐,单击后会显示我的所有选项。我该怎么做?

我尝试过使用样式并使用 select2-dropdown 但它似乎没有做任何事情。这似乎是一个简单的修复,但我显然有脑块

javascript jquery-select2
2个回答
0
投票

试试这个:-

<!DOCTYPE html>
<html lang="en">
<head>
   <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/select2.min.css" rel="stylesheet" />
   <script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>
   <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js"></script>
   <script>
       $(document).ready(function() {
           $('.js-select2').select2({
             placeholder: "Select your option",
             allowClear: true,
           });
 
           // Disable typing in the search box
           $('.js-select2').on('select2:open', function (e) {
             $('.select2-search__field').prop('disabled', true);
           });
       });
   </script>
</head>
<body>
   <select class="js-select2" name="state" multiple="multiple">
      <option value="AL">Alabama</option>
      <option value="WY">Wyoming</option>
   </select>
</body>
</html>

请尝试此操作并在此处更新。


0
投票

对于单选使用

minimumResultsForSearch = -1

对于搜索字段上的多个选择集

disabled
(如文档中所述):

对于多选框,没有明显的搜索控件。因此,要禁用对多选框的搜索,您需要在打开或关闭下拉列表时将禁用属性设置为 true

$('#js-select2')
  .select2({
    placeholder: "Select your option",
    allowClear: true
  })
  .on('select2:opening select2:closing', function(event) {
    var $searchfield = $(this).parent().find('.select2-search__field');
    $searchfield.prop('disabled', true);
  });
select {
  width: 100%;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/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://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/js/select2.min.js"></script>


<select id="js-select2" multiple="multiple">
  <option>1</option>
  <option>1</option>
</select>

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