`
flashdream8
  • 浏览: 680582 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jquery autocomplete

    博客分类:
  • ajax
 
阅读更多

JSP

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<title>jQuery Autocomplete Plugin</title>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquery-1.6.min.js"></script>
<script type='text/javascript' src='<%=request.getContextPath()%>/js/jquery.autocomplete.min.js'></script>
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/css/jquery.autocomplete.css" />

<script type="text/javascript">
$().ready(function() {
	$("#tags").autocomplete('<%=request.getContextPath()%>/enterprice/searchMEnterprice.do', {
		minChars: 1,
		width: 310,
		matchContains: false,
		autoFill: true,
		multiple:true,
		dataType:'json',   // 返回的结果集为JSON数据
		parse: function(data) {
			return $.map(data, function(row) {
				return {
					data: row,
					value: row.name,
					result: row.name + " [" + row.id + "]" // 返回结果显示内容
				}
			});
		},
		formatItem: function(row, i, max) { // 显示下拉列表的内容
			return i + "/" + max + ": \"" + row.name + "\" [" + row.id + "]";
		}
	}).result(function(e, item) {
		$("#ids").val(item.id);
	});
});

</script>

<input type="text" id='tags' />

<input type="text" id='ids' />

 

后台

 

public void searchMEnterprice()throws Exception{
		PrintWriter out = null;
		try {
			HttpServletResponse response = getResponse();
			response.setContentType("application/json;charset=GBK");
			response.setHeader("Pragma", "No-cache");
			response.setHeader("Cache", "no-cache");
			response.setDateHeader("Expires", 0);
			String qString = getParameter("q");
			qString = URLDecoder.decode(qString,"UTF-8");  // 由于中文乱码问题 转码
			List<MEnterprice> mEnterprices = enterPriceDAO.getAllMEnterprice();
			JSONArray jsonArray = new JSONArray();
			List list = new ArrayList();
			for (MEnterprice mEnterprice : mEnterprices) {
				Map map = new HashMap();
				String name = mEnterprice.getEnterpriceName()+"";
				String id = mEnterprice.getEnterpriceId()+"";
				String allPingYing = mEnterprice.getEnterpriceNameAllPingYin()+"";
				String shortPingYing = mEnterprice.getEnterpriceNameShortPingYin()+"";
				map.put("name",name);
				map.put("id", id);
				map.put("allPingYing",allPingYing );
				map.put("shortPingYing" , shortPingYing);
				System.out.println(qString);
				if (name.contains(qString)||id.contains(qString)
					|| allPingYing.contains(qString) || shortPingYing.contains(qString)) {
					list.add(map);
				}
			}
			jsonArray = JSONArray.fromObject(list);
			out = response.getWriter();
			out.print(jsonArray.toString());
			System.out.println(jsonArray.toString());
			out.close();
		} catch (Exception e) {
			e.printStackTrace();
		}finally{
			out.close();
		}
		
	}

 

 jquery autocomplete 中文匹配时乱码

  

   

将 	jquery.autocomplete.js 中的 q: lastWord(term) 编码
$.ajax({
				// try to leverage ajaxQueue plugin to abort previous requests
				mode: "abort",
				// limit abortion to this input
				port: "autocomplete" + input.name,
				dataType: options.dataType,
				url: options.url,
				data: $.extend({
					q: lastWord(term),
					limit: options.max
				}, extraParams),
				success: function(data) {
					var parsed = options.parse && options.parse(data) || parse(data);
					cache.add(term, parsed);
					success(term, parsed);
				}
			});

 

修改为

 q: encodeURI(lastWord(term)),

 

 

后台取值的时候

 q = URLDecoder.decode(q,"UTF-8");

 

分享到:
评论
1 楼 FrankWong1213 2012-09-20  
路过,支持!

相关推荐

    jquery autocomplete下载.rar

    《jQuery Autocomplete 全面解析》 jQuery Autocomplete 是一个非常实用的插件,它为网页表单输入框提供了自动补全功能,极大地提升了用户体验。这个压缩包“jquery autocomplete下载.rar”包含了实现这一功能所需...

    jquery autocomplete 动态补全例子有说明ajax加载

    jQuery Autocomplete是一款非常实用的JavaScript插件,它允许用户在输入框中输入文字时,根据已有的数据集动态提供补全建议。这个功能在许多Web应用中被广泛使用,如搜索框、表单输入等。在给定的“jquery ...

    jquery autocomplete dwr结合 修改Data

    标题中的“jQuery Autocomplete DWR结合 修改Data”指的是在Web开发中使用jQuery UI的Autocomplete组件与Direct Web Remoting (DWR)技术相结合,并对数据进行定制化处理的方法。jQuery Autocomplete是一个流行的UI...

    Jquery AutoComplete组件+Ajax实现搜索框输入提示功能小记

    ### Jquery AutoComplete组件+Ajax实现搜索框输入提示功能详解 #### 前言 在当前Web应用开发中,提供良好的用户体验是至关重要的。本文主要介绍如何使用Jquery AutoComplete组件与Ajax技术来实现搜索框的实时输入...

    jquery Autocomplete 仿百度搜索 只能搜索提示

    在IT行业中,jQuery Autocomplete是一个常用的插件,用于实现类似于搜索引擎的自动补全功能。它为用户提供了方便快捷的输入体验,尤其适用于大型数据集的筛选。本项目以"jQuery Autocomplete 仿百度搜索 只能搜索...

    JQuery autocomplete Ajax分页控件

    `jQuery autocomplete` 是jQuery UI库中的一个组件,它为输入框提供了自动完成的功能,能够根据用户输入的文本动态地从服务器获取并显示建议的匹配项。这个功能对于提高用户体验,特别是处理大量数据时,如搜索或者...

    Jquery AutoComplete

    **jQuery AutoComplete 知识详解** `jQuery AutoComplete` 是一个非常流行的 JavaScript 库,它扩展了 jQuery UI 框架,为输入框提供自动补全功能。这个组件广泛应用于网页表单,尤其是在用户需要输入搜索关键词...

    jQuery AutoComplete使用实例

    **jQuery AutoComplete 使用详解** jQuery AutoComplete 是一个非常流行的 jQuery 插件,它为输入框提供了自动补全功能,能够极大地提升用户体验。这个插件基于 jQuery 库,因此需要先引入 jQuery 才能使用。在本文...

    jquery autoComplete

    **jQuery autoComplete 知识点详解** `jQuery autoComplete` 是一个基于 jQuery 库的插件,它为网页表单输入框提供了自动完成的功能。这个插件能够帮助用户在输入时快速匹配并显示预先设定的数据集,通常用于提升...

    jQuery Autocomplete

    **jQuery Autocomplete** 是一个非常流行的JavaScript库,用于在用户输入时提供动态的下拉建议。这个功能在很多网站上都能看到,比如百度搜索框的提示效果,它极大地提升了用户体验,减少了用户输入的负担,提高了...

    jquery Autocomplete

    **jQuery Autocomplete** 是一个非常流行的JavaScript库,用于在输入框中实现自动补全功能。这个功能在网页表单中非常常见,可以极大地提升用户体验,尤其是处理大量数据时,如搜索框、地址输入等。jQuery ...

    jquery autocomplete js 文件

    **jQuery Autocomplete 知识点详解** jQuery Autocomplete 是一个非常流行且实用的插件,它为HTML输入字段提供自动完成功能。这个插件基于 jQuery 库,使得在网页中实现类似百度搜索框那样的动态下拉建议变得简单易...

    Jquery Autocomplete 拼音首字母匹配

    1,本示例是基于微软拼音类库的jquery.autocomplete自动拼音首字母匹配搜索实现,解决了多音字匹配问题。 2,由于用了Linq查询,所以至少需要.NET Framework 3.5。 4,由于jquery匹配时的match项和result项来自不同...

    jquery.autocomplete.js使用示例,可直接运行

    **jQuery Autocomplete.js 插件使用详解** jQuery Autocomplete.js 是一个非常实用的插件,它为HTML输入框提供了自动补全功能,极大地提升了用户体验。这个插件基于jQuery库,结合Ajax技术,能够实时从服务器获取...

    jquery自动补全插件(jquery autocomplete)

    **jQuery AutoComplete 插件详解** jQuery AutoComplete 是一个非常流行的前端插件,它为输入框提供了自动补全的功能,极大地提升了用户在网页上的输入体验。这个插件基于 jQuery 库,因此,使用前需要先引入 ...

    jquery autocomplete示例

    **jQuery Autocomplete 示例详解** jQuery Autocomplete 是一个非常实用的插件,用于在输入框中实现自动补全功能。这个插件广泛应用于各种网站,帮助用户快速找到他们想要输入的信息,提高了用户体验。在这个示例中...

    Jquery AutoComplete 使用demo

    **jQuery AutoComplete 知识点详解** jQuery AutoComplete 是一个非常流行的 jQuery 插件,它为输入框提供了自动补全的功能,广泛应用于网页表单、搜索框等场景,以提高用户体验。这个插件允许开发者从本地数组或...

    jquery autocomplete 完成控件中文修正

    jquery autocomplete.js 是一款优秀的开源JS,支持自动完成,不过如果是中文失效。原因是由于中文编码不一致引起的,修改源文件中AJAX请求中的编码,加上escape编码后,在后台用Server.URLDecode解码后,则中文也...

    jquery Autocomplete插件,搜索自动完成

    jQuery plugin: Autocomplete 参数及实例 官网:jQuery plugin: Autocomplete 此插件依赖于 jquery 1.2.6 --- jquery 1.8.3 转自:http://www.cnblogs.com/duanhuajian/p/3398904.html

Global site tag (gtag.js) - Google Analytics