转载自:http://dada-fangfang.iteye.com/blog/695464

首先下载jquery.js和jquery.autocomplete.js

注意:jquery.js 要放在jquery.autocomplete.js前面。 

还有个样式jquery.autocomplete.css , 随意下载。 



首先js代码如下 

$().ready(function() { 

$("#searchText").autocomplete("$!  {request.contextPath}/hrHiPersons!ajaxSelectPerson.action", { 

minChars: 0, 

max: 12, 

autoFill: true, 

mustMatch: true, 

matchContains: false, 

scrollHeight: 220, 

            formatItem: function(item) { 

                return item[0]; 

            } 

}); 

}); 

struts2的url应该不陌生吧 

autocomplete的参数,这里不写了,可以参考 

http://chenling1018.blog.163.com/blog/static/148025420101250354380/ 

他写的很详细,我也测过,基本都描述的差不多. 



以前js方法的item参数,就是后台返回的json流,一下是java代码 

public String ajaxSelectPerson(){ 

try { 

String search = getRequest().getParameter("q"); 

if(search==null||search.length()==0) return null; 

List<String> names = new ArrayList<String>(); 

                   names.add("张三"); 

                   names.add("李四"); 

                   names.add("王五"); 

                  getResponse().setCharacterEncoding("UTF-8"); 

JSONArray json = JSONArray.fromObject(names); 

PrintWriter out = getResponse().getWriter(); 

out.print(json); 

        out.flush(); 

        out.close(); 

        return null; 

} catch (Exception e) { 

e.printStackTrace(); 



return null; 



他默认是get提交,而且默认接受的参数是q,一般不用修改。 

其次主要是乱码的问题,ajax的传输都是utf-8,所以我们尽量都转成utf-8(tomcat,jsp),然后把response也设置成utf-8,这样中文就没问题了。 

还有个忘了说, 需要修改autocomplete的源码,主要是为了中文的输入识别问题 

在199-200行 

$(input.form).unbind(".autocomplete"); 



修改为: 

$(input.form).unbind(".autocomplete").bind("input", function() {   

     onChange(0, true);   

});

OK了,效果还是不错的,比原先手写的jquery代码好多了,简单实用。

自己做的jquery的autocomplete的一个例子的更多相关文章

  1. jquery ui autocomplete 实现点击文本框,出现所有查询信息效果,与bootstrap结合使用修改样式

    直接看代码 <!doctype html> <html lang="en"> <head> <meta charset="utf ...

  2. jQuery ui autocomplete下拉列表样式失效解决,三种获取数据源方式,

    jQuery有很多很多的已经实现,很漂亮的插件,autocomplete就是其中之一.jQuery ui autocomplete主要支持字符串Array.JSON两种数据格式,jQuery ui b ...

  3. jQuery UI Autocomplete是jQuery UI的自动完成组件(share)

    官网:http://jqueryui.com/autocomplete/ 以下分享自:http://www.cnblogs.com/yuzhongwusan/archive/2012/06/04/25 ...

  4. jQuery UI Autocomplete Combobox 配 ASP.NET DropDownList

    0.引言   1.起因                  一开始使用Autocomplete做了一个自动补全的文本框,如上图.后来因业务需要希望能在这个文本框的边上做个下拉列表按钮,一按就展开所有支持 ...

  5. jQuery UI Autocomplete是jQuery UI的自动完成组件

    支持的数据源 jQuery UI Autocomplete主要支持字符串Array.JSON两种数据格式. 普通的Array格式没有什么特殊的,如下: ? 1 ["cnblogs" ...

  6. jQuery UI AutoComplete的使用

    现场提出优化单,Table Mapping里关于获取数据源下所有表名的地方由于表数量过多选择不便,需添加搜索功能.原本的实现是一个Dialog ,现打算将其改为AutoComplete. 框架使用的是 ...

  7. Jquery ui autocomplete简单api

    重要说明:与配置选项类似,Autocomplete插件的方法也不是直接调用,而且通过autocomplete()方法进行间接调用.例如: $("#title").autocompl ...

  8. jQuery 插件autocomplete

    jQuery 插件autocomplete 自动加载 参考: http://www.cnblogs.com/Peter-Zhang/archive/2011/10/22/2221147.html ht ...

  9. jQuery plugin: Autocomplete 参数及实例

    官网:jQuery plugin: Autocomplete          (注:此插件已经不再更新.它的继任者是jQuery UI的一部分,) 此插件依赖于 jquery 1.2.6 --- j ...

随机推荐

  1. 使用eclipse创建maven项目出现的一个问题

    错误信息 This error occurs when you employ a plugin that Maven could not download. Possible causes for t ...

  2. STM32串口通信UART使用

    STM32串口通信UART使用 uart使用的过程为: 1. 使能GPIO口和UART对应的总线时钟 2. 配置GPIO口的输出模式 3. 配置uart口相关的基本信息 4. 使能uart口的相关的中 ...

  3. 2.hbase原理(未完待续)

    hbase简介相关概念hmsterhregionserver表regionhstorememstorestorefilehfileblockcacheWALminorcompactmajorcompa ...

  4. windows远程连接失败问题排查思路

    一般情况下,对WIN7的远程连接只需要5步即可完成远程连接的设置: 1).用户是否设置了密码 2).计算机属性-允许远程登录 3).设置计算机永不睡眠 4).关闭防火墙或者设置入站规则 5).排查Re ...

  5. wwnjld第二轮迭代测试报告

    1.引言 1.1测试报告目的 被测试报告为wwnjld小组我们的时间管理软件的第二轮迭代所写的软件测试报告.在经过本小组大家不懈的努力之下,我们小组第二轮迭代的产品终于新鲜出炉了.这次测试小组的主要成 ...

  6. 20145214 《Java程序设计》第6周学习总结

    20145214 <Java程序设计>第6周学习总结 教材学习内容总结 串流设计 Java将输入/输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象. 输入串流代表对象为java. ...

  7. mysql 相同表结构拷贝数据

    第一种方法: 在导出表结构的时候可以勾选导出数据: 第二种方法: 表已经存在了,只需要数据即可.这个时候可以编写sql语句(暂不支持不同服务器之间的表数据复制) insert into tab_a(i ...

  8. ZooKeeper server &&client

    写了一个关于zookeepeer应用的简单demo 服务端定时的向zookeeper集群注册,客户端监听zookeeper服务节点变化,一旦变化,立刻响应,更新服务端列表 服务端代码: #includ ...

  9. lintcode-158-两个字符串是变位词

    158-两个字符串是变位词 写出一个函数 anagram(s, t) 判断两个字符串是否可以通过改变字母的顺序变成一样的字符串. 说明 What is Anagram? Two strings are ...

  10. mstsc远程登录终端超出最大连接数的解决办法

    1,.远程服务器有两个用户登录 2.第三个登录时提示:终端服务器超出了最大允许连接,这种情况怎么解决 A.通过运行命令来解决:运行输入mstsc /admin /v:IP:端口  敲回车来解决,这里的 ...