jquery ui autocomplete实例
2015-11-17 15:35
746 查看
引入jquery ui css js
<link href="js/plugins/jquery-ui/jquery-ui.min.css" rel="stylesheet"> <script src="js/plugins/jquery-ui/jquery-ui.min.js"></script>
构建控件
<div class="form-group"> <div class="col-sm-3"> <label class="detail-title">工号:</label> </div> <div class="col-sm-6"> <input type="text" id="employeeNoSearch" placeholder="请输入员工工号" class="ui-autocomplete-input form-control" autocomplete="off"></input> <input type="text" id="employeeNo" name="employeeNo" style="display:none;" class="ui-autocomplete-input form-control" autocomplete="off"></input> </div> </div>
js
//Autocomplete $("#employeeSearch").autocomplete({ source: function(query,process){ $.ajax({ "contentType":"application/json; charset=UTF-8", "dataType" : 'json', "type" : "POST", "url" : ctx + "/device/employee/"+query.term,//请求数据的url query.term为模糊查询的数据 "data" : {"matchCount":200},//附带的数据 "success" : function(data){ var ebean = [] for (var int = 0; int < data.length; int++) {//temp临时数组 var temp = []; temp.label = data[int].employeeName +" "+ data[int].employeeNo; temp.value = data[int].employeeNo; ebean.push(temp); } return process(ebean); } }) }, search:function(event, ui){ $("#employeeNo").val(""); }, select: function(event, ui) { $("#employeeNoSearch").val(ui.item.label); $("#employeeNo").val(ui.item.value); var uistr =ui.item; // 阻止事件的默认行为 event.preventDefault(); } });
Autocomplete有一个非常重要的属性参数source,它表示用于自动完成功能的数据集合。
source属性的值可以是一个数组;也可以是一个字符串,用于表示一个远程请求的URL地址,通过处理该URL返回的数据从而获得autocomplete所需的数据;
它还可以是一个回调函数,以便于完成一些复杂的数据处理。
java后台请求处理代码
action@ResponseBody @RequestMapping("/employee/{employeeKey}") public List<EmpBreifBean> employee(@PathVariable("employeeKey") String employeeKey) { JsonBean bean = new JsonBean(); try { // 查询该公司下所有员工列表 List<EmpBreifBean> eBean = posPadServiceImpl.getOrgEmployeeList( UserUtils.getOrgId(), employeeKey); return eBean; } catch (Exception e) { bean.setCode(0); bean.setMessage("获取公司员工列表失败: [{}]" + e.getMessage()); LOGGER.error("get Investor list error, errorMsg=[{}].", e.getMessage()); } return null; }
service
List<EmpBreifBean> getOrgEmployeeList(String tenantIdentifier,String employeeKey);
mapper
select employee_id,name,employee_no from employee where org_id = #{orgId} and (pos_pad_id is null or pos_pad_id = '') <if test="employeeKey != null"> and ( name like #{employeeKey}"%" or employee_no like #{employeeKey}"%") </if>
实际效果
相关文章推荐
- jquery 中获取table里tr的属性值
- Jquery easyui 实现动态树
- jquery扩展方法
- jquery的ajax同步和异步
- 实例代码讲解jquery easyui动态tab页
- 基于Jquery easyui 选中特定的tab
- 将JavaScript的jQuery库中表单转化为JSON对象的方法
- 基于jquery实现可定制的web在线富文本编辑器附源码下载
- 谈谈对jquery ui tabs 的理解
- javascript以及jquery的学习
- jQuery Timers插件
- Jquery ajax 同步阻塞引起的UI线程阻塞问题
- jquery easyui datagrid 分页 详解
- 如何利用jquery来给input添加或删除disabled属性全部方法总结
- jquery判断密码强度的验证代码
- jquery判断页面是否滑动到最底部
- jquery实现邮箱自动填充提示功能
- jquery animate动画页面内滚动
- JQuery 学习,翻译练习
- 10个精选的颜色选择器Javascript脚本及其jQuery插件