<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>jquery Autocomplete输入自动完成插件</title>
<!--引入css-->
<link rel="stylesheet" href="js/jquery.autocomplete.css" />
</head>
<body>
<input type="text" id="month"/>
<button type="button">get value</button>
<!--引入jquery 1.2-->
<script src="js/jquery.js"></script>
<!--引入jquery autocomplete js-->
<!--这里使用高版本的jquery可能会报错 $.broswer is no defined,将autocomplete.js中的$.broswer换成$.support即可-->
<script src="js/jquery.autocomplete.js"></script>
<script>
$(function() {
var months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
var curValue ="";
$("#month").autocomplete(months, {
minChars: 0, //至少输入的字符数,default:1;如果设为0,在输入框内双击或者删除内容时显示列表。
width: 220, //下拉框的宽度,default:input元素的宽度
max: 10, //下拉项目的个数,default:10
scrollHeight: 300, // 下拉框的高度, Default: 180
scroll: true, //当结果集大于默认高度时,是否使用滚动条,Default: true
multiple: false, //是否允许输入多个值,多值间逗号隔开. Default: false
autoFill: false, // 是否自动填充. Default: false
multipleSeparator: " ", //输入多个字符时,用来分开各个的字符. Default: ","
matchCase:false, //是否开启大小写敏感
selectFirst:true, // 如果设置成true,下拉列表的第一个值将被自动选择, Default: true
matchSubset:true, //是否启用缓存
cacheLength: 10, //缓存的长度.即缓存多少条记录.设成1为不缓存.Default: 10
delay: 20, //击键后的延迟时间(单位毫秒).Default: 远程为400 本地10
mustMatch:false, //如果设置为true,只会允许匹配的结果出现在输入框,当用户输入的是非法字符时,将被清除, Default: false
matchContains:true, //决定比较时是否要在字符串内部查看匹配.Default: false
//结果中的每一行都会调用这个函数,返回值将用LI元素包含,显示在下拉列表中. 三个参数(row, i, max): 返回的结果数组, 当前处理的行数(从1开始), 当前结果数组元素的个数. Default: none, 表示不指定自定义的处理函数.
formatResult : function(row, i, max) {
return row[0]+"月";
},
//和formatItem类似,但可以将将要输入到input文本框内的值进行格式化.同样有三个参数,和formatItem一样.Default: none,表示要么是只有数据,要么是使用formatItem提供的值.
//对每一行数据使用此函数格式化需要查询的数据格式. 返回值是给内部搜索算法使用的. 参数值row
}).result(function(a,b,c){
});
});
</script>
</body>
</html>