jquery ajax动态模糊查询插件

html代码如下:

<div id="select_model">
           <div style="width: 150px;line-height: 24px">
                  <input type="text" name="shop_name" autocomplete="off" class="shop-name-input-click" id="shop_name_input" data-url="{:U('CashAdmin/Shop/getLinkShopName')}"/>
                  <input type="hidden" name="shop_id" value="" id="shop_id_input"/>
          </div>
          <div class="shop-name-input-click" style="width: 150px;text-align: left;display: none;max-height:200px;overflow-y :auto;position: absolute;background: #fff;border: 1px solid #000;border-top: 0;" id="search_select_div">
         </div>
 </div>

js代码如下:

ajax接口返回的数据格式:
[{“CONTENT”:“益丰店张师傅”,“CODE”:“1058125”},{“CONTENT”:“方志宏测试”,“CODE”:“1058254”}]

  //封装调用接口获取数据并展示
function req() {
    var url=$("#shop_name_input").attr('data-url');
    var inputval=$("#shop_name_input").val();
    $.ajax({
        type: "POST",
        url: url,
        data: "",
        success:function(data){
            var d=JSON.parse(data);
            var html="";
            for (var i=0;i<d.length;i++) {
                var r = d[i]['CONTENT'].indexOf(inputval);
                if(r != -1){
                    html += "<div class=\"select_label\" data-shopid=\""+d[i]['CODE']+"\" style=\"line-height: 22px;\"><label style='padding-left: 4px;'>"+d[i]['CONTENT']+"</label></div>";
                }
            }
            if(html != ''){
                $("#search_select_div").html(html);
                $("#search_select_div").show();
            }
        }
    });
}
//输入框值改变的时候调用
$("#shop_name_input").on('input propertychange',req);
//输入框聚焦的时候调用
$("#shop_name_input").focus(req);
//事件代理,选择内容,并赋值到标签元素
$("#search_select_div").on("click","label",function(event){
    var elem = $( this );
    var lav=elem.html();
    var shop_id=elem.parent("div").attr("data-shopid");
    $("#shop_name_input").val(lav);
    $("#shop_id_input").val(shop_id);
    $("#search_select_div").hide();
});
//离开选择框隐藏选择框内容
$("body").click(function (e) {
    var inputid = e.target.id;
    var idname = 'shop_name_input';
    if(inputid != idname){
        $("#search_select_div").hide();
    }
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值