如果使用select2选择了特定值,则不允许选择其他选项

时间:2016-11-09 09:34:11

标签: javascript jquery select2

正如你所看到我有select2(多个)选择功能的选择框,有一些选项,如

<option value="All"> All </option>
<option value="test@email.com"> User 1</option>
<option value="test2@email.com"> User 2 </option>
<option value="Test3@rmail.com"> User 3 </option>

是可能的,如果我从选择框中选择选项All,那么选择框剂量不允许我从给定选项中选择其他选项,除非我将其删除。

我想限制用户选择All或从选项中选择多个用户。

我准备使用jQuery或javascript来实现这一目标。

1 个答案:

答案 0 :(得分:2)

<强> Working fiddle

当出现选项All时,您可以将select的值设置为All:

$("#my-select").select2();

$("#my-select").on('change', function(){
    var selected = $(this).val();

    if(selected != null)
    {
      if(selected.indexOf('All')>=0){
          $(this).val('All').select2();
      }
    }
})

希望这有帮助。

&#13;
&#13;
$("#my-select").select2();

$("#my-select").on('change', function(){
  var selected = $(this).val();

  if(selected != null)
  {
    if(selected.indexOf('All')>=0){
      $(this).val('All').select2();
    }
  }
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/3.2/select2.min.js"></script>

<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/3.2/select2.css" rel="stylesheet"/>

<select multiple id="my-select" style="width:300px">
  <option value="All"> All </option>
  <option value="test@email.com"> User 1</option>
  <option value="test2@email.com"> User 2 </option>
  <option value="Test3@rmail.com"> User 3 </option>
</select>
&#13;
&#13;
&#13;