1.引进js和css
<script type="text/javascript" src="${ctx }/script/jquery-1.7.2.js"></script>
<script type='text/javascript' src='${ctx }/js/jquery.bgiframe.min.js'></script>
<script type='text/javascript' src='${ctx }/js/jquery.ajaxQueue.js'></script>
<script type="text/javascript" src="${ctx }/js/jquery.autocomplete.js"></script>
<script type='text/javascript' src='${ctx }/js/thickbox-compressed.js'></script>
<link rel="stylesheet" type="text/css" href="${ctx }/js/jquery.autocomplete.css"></link>
2.好戏上场
$(document).ready(function(){
$('#keyword').autocomplete("${ctx}/system/ajaxLoadUser.action", //url路径
{
//max: 10, //列表里的条目数
minChars: 0, //自动完成激活之前填入的最小字符
width: 400, //提示的宽度,溢出隐藏
scrollHeight: 300, //提示的高度,溢出显示滚动条
matchContains: true, //包含匹配,就是data参数里的数据,是否只要包含文本框里的数据就显示
autoFill: false, //自动填充
dataType: 'json', //数据类型,json || xml
extraParams:{keyword:function() { return $('#keyword').val();}}, //传参,后台查询的条件
parse: function(data) { //重写parse方法,用来解析json
var rows = [];
for(var i=0; i<data.length; i++){
rows[rows.length] = {
data:data[i],
value:data[i].id,
result:data[i].name
};
}
return rows;
},
formatItem: function(row, i, max) {
return i + '/' + max + ':"' + row.name + '"[' + row.id + ']'; //解释界面显示,看下图片你就明白了
},
formatMatch: function(row, i, max) {
return row.name + row.id;
},
formatResult: function(row) {
return row.name;
}
}).result(function(event, row, formatted) { //选中触发的方法
$("#userId").val(row.id);
//alert(row.id);
});
3.html代码:(给个默认的input就可以了)
<input id="keyword" />
4.我后台的json数据,提供大家参考:
[{"id":"1033","name":""},{"id":"3006","name":"李小兰"},{"id":"4012","name":"李翩"},{"id":"4022","name":"李顺文"},{"id":"5011","name":"李爱红"},{"id":"6002","name":"李雅清"},{"id":"6011","name":"李俊明"},{"id":"6012","name":"李素婵"},{"id":"6013","name":"李逸珊"},{"id":"6020","name":"李婉伦"},{"id":"7004","name":"李煜林"},{"id":"10001","name":"李伟树"},{"id":"10006","name":"李振宏"},{"id":"10007","name":"李杏见"},{"id":"12001","name":"李雪峰"},{"id":"12005","name":"林李杰"},{"id":"13006","name":"李国威"}]
5.补充说明
(1),后台关键字乱码问题:这个是源代码问题,由于改插件默认是用GET方式提交,中文都被转义了,所以在后台必须加上编码转换才行:
keyword.getBytes("iso8859-1"),"utf-8")
(2),关于不兼容火狐(firefox)的问题,我就不说了,大家可以百度解决
6.补上个图片吧,有图,有真相:
这样就很直观了,呵呵
分享到:
相关推荐
运用jquery.autocomplete.js 和jquery.autocomplete.css实现文本框自动补全,直接下载可以看到运行效果,带注释
利用jquery.autocomplete.js插件实现了文本框自动补全的功能, 附件包含两个实例代码,均以txt文档显示,都有前台和后台代码。一个是传一个参数,一个是传两个参数,后台以一般处理程序ashx文件编写。大家只需要修改...
1.该js支持jquery的自动补全功能 2.因为jquery-ui是jquery的插件,所以部分版本jquery可能不支持该插件,建议换成内附的jquery.js 3.如有疑惑,请阅读内附的说明文档
[ jquery.autocomplete ]jquery的自动完成/补全插件(很好很强大) 谁用谁知道
jquery自动补全插件(jquery autocomplete) 内包含使用说明,前台+后台
style.css几个文件,访问的是数据库,返回的是json数据,json格式已经在index.html中,文本框下来智能选择补全,jquery.ui.js中已经包含了jquery.autocomplete.js源码,不在需要单独引用jquery.autocomplete.js文件
jQuery自动补全自动提示插件仿百度自动提示插件
layui自动填充插件,使用教程配合https://www.cnblogs.com/aeolian/p/11993836.html#autoid-6-0-0
jquery 文本框 自动补全 ajax autocomplete 完整实例
jquery autoComplete插件,文字自动补全demo1
NULL 博文链接:https://zhuhong7000-gmail-com.iteye.com/blog/1399012
输入文字,自动联想库中的内容,自动补全,关键字高亮
jqueryd的autoComplete插件,输入自动补全 支持中文补全
jquery.autocomplete 是一款比较好用的智能补全插件(类谷歌,百度),遗憾的是很难找到相关的教程,笔者自己的使用经验算是给大家一个入门(还有很多强悍功能没用到)。插件和说明是在一起的,下载下来都在了
使用HTML5+Jquery实现Autocomplete功能,本资源中主要是举例控件如何使用。 $(document).ready(function(){ $("#autocomplete").autocomplete({ minLength:0, autoFocus:false, source: availableTags, ...
仿百度输入自动补全源码 ...使用的是Jquery的一个名叫 jquery.ui.autocomplete.js的插件做的。 后台只要返回 json格式的数据即可。 首先需要创建测试数据,使用sqlserver创建数据库,新建表添加数据。
jquery.autocomplete.min.js插件 仿google实现自动补全
仿照google自动补全,jQuery是近段时间里比较流行的一个JavaScript框架,不断有使用者开发出新的 jQuery插件。下面收集了50个开发者最喜欢使用的jQuery插件。
主要介绍了jQuery实现输入框邮箱内容自动补全与上下翻动显示效果,涉及jquery.autoComplete.js插件的使用,可实现输入框内容自动补全的功能,附带了完整的demo源码供读者下载参考,需要的朋友可以参考下
jquery的一个自动补全插件,里面有demo在线演示地址和在线api地址