带搜索的js下拉菜单(bootstrap按钮式)

在做项目的时候需要用到可以搜索的select菜单,用过bootstrap-select ,不过由于项目需求是动态添加的下拉菜单,插件不太满足,所以自己写了一个。在这里分享下。

html:部分

<html>
 <meta charset="utf-8">
 <link rel="stylesheet" href="./V2/OA/Public/css/bootstrap.min.css">

 <div class="btn-group">
  <button type="button" id="web" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">发布网站
   <span class="caret"></span>
  </button>
  <ul class="dropdown-menu ngxSelect" bindId="web" bindValueId="webid" role="menu">
    <span><input type='text'></span>
    <li><a data-val="1" href="#">功能</a></li>
    <li><a data-val="2" href="#">另一个功能</a></li>
    <li><a data-val="3" href="#">其他</a></li>
  </ul>
  <input type="hidden" name="webid" id="webid">
 </div>

 <script src="./V2/OA/Public/js/jquery-2.0.3.min.js"></script>
 <script src="./V2/OA/Public/js/bootstrap.js"></script>
<script src="ngxSelect.js"></script>

</html>

js部分

var ngxId = $('.ngxSelect').attr('bindID');//绑定的id
var valueId = $('.ngxSelect').attr('bindValueId');//绑定的值id

/*-- 实时监测事件 --*/
$(".ngxSelect span input").bind('input propertychange',function () {
    var val = $(this).val();
    $('.ngxSelect li').attr('style','display:block');
    if(val != ''){
        $('.ngxSelect li a').each(function (index,ele) {
            if($(this).html().indexOf(val) == -1){
                $(this).parent().attr('style','display:none');
            }
        });
    }
});

/*-- 改变主体和值 --*/
$('.ngxSelect li a').click(function () {
    $('#' + valueId).val($(this).attr('data-val'));
    $('#' + ngxId).html($(this).html());
});




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值