select2如何使用?

由于服务器压力,如果数据多 会造成服务器卡顿 下拉搜索如何变成远程搜索来解决服务器压力 这就可以使用select2

先标明select2官网:

https://select2.org/

在这里插入图片描述
html

<select id="import-select2" multiple="multiple" ></select>

select2与一般的select的数据有差异,它需要特定的格式
,官方的数据结构如下:
在这里插入图片描述

js

引入js
 <link rel="stylesheet" type="text/css" href="/bootstrap/plugins/select2/select2.min.css">
    <script src="/bootstrap/plugins/select2/select2.js"></script>
//  初始化select2
      $("#import-select2").select2({
          placeholder: '请搜索联系人',   
          multiple:true,  //是否多选
          language : BW8i18n.getLocale() === 'en_US' ? 'en-US' : 'zh-CN',
          allowClear:false,
          closeOnSelect:close,
          tokenSeparators:[ ',' ,'' ], //数组类型
          ajax:{
              type:'POST',
              url:'.../.../url',  //这里是接口地址
              delay: 250,
              dataType:'json',
              //params 接口传入的值
              data: function (params) {
                  return {
                      contactorName: params.term, //当前搜索框里面的值
                      limit:100,
                      offset:0
                  };
              },
              // 如果后端返回的数据不是官方结构 通过processResults 来变成官方结构
              processResults: function (data) {
                  var newlist = []
                  var list = data.rows
                  for(var i=0;i<list.length;i++){
                      newlist.push({
                          id:list[i].cId,
                          text:list[i]._companyName?list[i]._companyName+'|'+list[i].realName+'('+list[i].cId+')':list[i].realName+'('+list[i].cId+')'
                      })
                  }
                  //正确的返回格式
                  return {
                      results: newlist
                  };
              },
          }
        
      });
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值