jquery select2增加全部选项

实现select2下拉框有个全部选项,当选择全部选项的时候清空其他选项,当已选中全部,再去选择其他选项的时候清除全部
  //前提:select增加option <option value="-1">全部</option>
  var selectId="#selectId";
  $(selectId).select2({
    
    
      allowClear: true,
      placeholder: '请选择',
      multiple: true,
      language: "zh-CN",
    }).on("select2:select", function (e) {
    
    
      if (e.params.data.id == -1) {
    
     //新增全部
        $(selectId).select2("val", [-1]); //清空其他选项
      }else{
    
     //新增不是全部
        var selected = $(selectId).select2().val(); //获取select2选中的值
        if($.inArray("-1", selected) >= 0){
    
     //判断已选中是否有全部选项,有的话清除全部选项
          selected.splice(0,1); //清除第一个元素,也就是value为-1的选项
          $(selectId).select2("val",selected); //重新初始化select2
        }
      }
    })

猜你喜欢

转载自blog.csdn.net/yzx3105/article/details/106794826#comments_26080147