转载自: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. C++ 学习笔记之——STL 库 queue

    1. 队列 queue 队列是一种容器适配器,专门用来满足先进先出的操作,也就是元素在容器的一端插入并从另一端提取. bool empty() const; 返回队列是否为空: size_type s ...

  2. solidity python 签名和验证

    注意,以太坊智能合约里面采用的是公钥非紧凑类型 def gen_secrets_pair(): """ 得到公钥和私钥 :return: ""&quo ...

  3. string && 字符数组

    一.string 1. 使用字符串字面值初始化string对象 如:string s1 = "hiya"; string s2("hiya"); 该字面值的最后 ...

  4. Android蓝牙开发浅谈(转)

    http://www.eoeandroid.com/thread-18993-1-1.html 对于一般的软件开发人员来说,蓝牙是很少用到的,尤其是Android的蓝牙开发,国内的例子很少     A ...

  5. 3dContactPointAnnotationTool开发日志(七)

      调了半天发现是逻辑错误,改了一下终于没那么奇怪了:   但是有的接触点很明显跑偏了.再回顾一下自己是怎么求的,我是直接用的下面的代码求解一个点是否在另一个物体内部: var bounds = us ...

  6. 【week6】约跑App视频链接

    约跑视频链接发布在优酷,链接如下: http://v.youku.com/v_show/id_XMTc3NTcyNTcyNA==.html 秒拍视频连接: http://www.miaopai.com ...

  7. HDU 2161 Primes

    http://acm.hdu.edu.cn/showproblem.php?pid=2161 Problem Description Write a program to read in a list ...

  8. Innodb 中 RR 隔离级别能否防止幻读?

    问题引出 我之前的一篇博客 数据库并发不一致分析 有提到过事务隔离级别以及相应加锁方式.能够解决的并发问题. 标准情况下,在 RR(Repeatable Read) 隔离级别下能解决不可重复读(当行修 ...

  9. oracle 11g ADG实施手册(亲测,已成功部署多次)

    一:实验环境介绍 虚拟机系统:    RHEL Linux 6.4(64位) 数据库版本:    Oracle 11gR2 11.2.0.4 (64位) IP地址规划: 主数据库 192.168.11 ...

  10. SPDY以及HTTP2.0

    背景介绍 HTTP2.0跟SPDY在不少理念上是相似的,目的都是为了提升HTTP1.1的性能. HTTP2.0将会是业界的标准,比SPDY要完善,今后可能会都转向http2.0而放弃SPDY. SPD ...