PHP群:95885625 Hbuilder+MUI群:81989597 站长QQ:634381967
    您现在的位置: 首页 > 开发编程 > ThinkPhp教程 > 正文

    thinkphp3.2结合select2 4.0.x下拉框搜索功能

    作者:admin来源:网络浏览:时间:2020-09-30 00:07:50我要评论
    导读:在项目中有一个资产需要选择客户经理B角色,如果用户很少,下拉框可以满足需求,但是用户很多就不好现实了,所以结合select2做了一个下拉框搜索的功能,B5教程网小编分享给大家。
    在项目中有一个资产需要选择客户经理B角色,如果用户很少,下拉框可以满足需求,但是用户很多就不好现实了,所以结合select2做了一个下拉框搜索的功能,B5教程网小编分享给大家。

    效果图如下:

    thinkphp3.2结合select2 4.0.x下拉框搜索功能

    html代码

    1. <div class="form-group"
    2.     <label for="inputElse" class="col-sm-2 control-label">客户经理B</label> 
    3.         <div class="col-sm-6"
    4.             <select class="form-control" id="inputBmid" name="info[b_mid]"
    5.                             </select> 
    6.         </div> 
    7. </div> 

    js代码
     

    1. $("#inputBmid").select2({ 
    2.                 placeholder: data, 
    3.                 ajax: { 
    4.                     url: "{:U('CreditorAssets/getMember')}"
    5.                     dataType: 'json'
    6.                     delay: 250, 
    7.                     data: function (params) { 
    8.                         params.offset = 6; 
    9.                         return { 
    10.                             q: params.term, 
    11.                             page: params.page, 
    12.                             offset:params.offset 
    13.                         }; 
    14.                     }, 
    15.                     processResults: function (data, params) { 
    16.                         params.page = params.page || 1; 
    17.                         var users = data.res || []; 
    18.                         var options = []; 
    19.                         for (var i = 0, len = users.length; i < len; i++) { 
    20.                             var option = { 
    21.                                 "id": users[i]["id"], 
    22.                                 "text": (users[i]["mobile"] + " (" + users[i]["nickname"]+")"
    23.                             }; 
    24.                             options.push(option); 
    25.                         } 
    26.  
    27.                         return { 
    28.                             results: options, 
    29.                             pagination: { 
    30.                                 more: (params.page * params.offset) < data.total 
    31.                             } 
    32.                         }; 
    33.                     }, 
    34.                     cache: true 
    35.                 }, 
    36.                 escapeMarkup: function (markup) { return markup; }, 
    37.                 //minimumInputLength: 1 
    38.             }); 

    php后台代码

    1. public function getMember(){ 
    2.         $page = I('page',1,'intval'); 
    3.         $q = I('q','','htmlspecialchars,trim'); 
    4.         $offset = I('offset'); 
    5.         $where=array(); 
    6.         if($q){ 
    7.             $where['mobile']=array('like',$q.'%'); 
    8.         } 
    9.         $list = M('member')->field('id,mobile,nickname')->page($page,$offset)->where($where)->select(); 
    10.         if($page == 1){ 
    11.             array_unshift($list,array('id'=>-1,'mobile'=>'设置B角为空')); 
    12.         } 
    13.  
    14.         $count=M('member')->count(); 
    15.         echo json_encode(array('res'=>$list,'total'=>$count));exit
    16.     } 

     

    转载请注明(B5教程网)原文链接:https://b5.mxunkeji.com/content-83-5336-1.html
    相关热词搜索: