jquery autocomplete可以实现自动完成,当用户输入一个关键字后,返回和这个关键字相关的词汇。
下面介绍两种向jquery autocomplete返回数据库数据的方法,第一种方法直接返回text,是我自己摸索出来的;第二种方法返回JSON数据,可以返回结构比较复杂的数据,参考了官方文档和网友的作法。我使用struts2和jquery1.3.2做了个sample,希望能帮到大家。
1、直接返回text数据
A、Action类
public class AutocompleteAction {
private String q;// autocomplete请求参数
pulbic void searchKey(){
if(q==null||q.trim().equals("")){
return;
}
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs=null;
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType( "text/html;charset=utf-8 ");
response.setHeader( "Cache-Control ", "no-cache ");
response.setHeader( "Pargma ", "no-cache ");
PrintWriter writer =null;
try{
conn=getConnection();//得到连接,略
//netkeys表只有id和key两个字段
ps=conn.prepareStatement("select * from netkeys where keywork like ?");
ps.setString(1, q+"%");
rs= ps.executeQuery();
writer=response.getWriter();
while(rs.next()){
String v=rs.getString(2);
writer.println(v);
}
}catch(Exception e){
e.printStackTrace();
}finally{
//关闭连接等资源,略
if(writer!=null)writer.close();
}
}
B、JSP文件
引用jquery和autocomplete库,略
<SCRIPT type=text/javascript>
$(function() {
var url="autocompleteAction! searchKey.action";
$("#keyword").autocomplete(url, {
max: 20,
autoFill: true,
mustMatch: false, // 作用效果就是自动清空不匹配的输入
matchContains: false,
scrollHeight: 220,
formatItem: function(row, i, max) {
return "<I>"+row[0]+"</I>";
},
formatMatch: function(row, i, max) {
return row[0];
},
formatResult: function(row) {
return row[0];
}
});
});
2、返回json方式
A、修改前面Action类
List keys=new ArrayList();
while(rs.next()){
String v=rs.getString(2);
keys.add(v);
}
//返回json数据
resultJSON = new JSONObject();//JSONObject类来自json-lib-2.3库
writer.print(resultJSON.element("v", keys).toString());//会返回{“v”:[]}格式的数据
B、修改JSP中autocomplete插件方法
dataType:'json',//返回数据类型
parse:function(data){
var rows=[];
for(var i=0;i<data.v.length;i++){
//一定要按以下格式设置数据
rows[rows.length]={
data:data.v[i],
value:data.v[i],//值
result:data.v[i]//返回结果显示内容
};
}
return rows;
},
formatItem:function(row, i, n) {
return "<I>"+row+"</I>";
}
分享到:
相关推荐
**jQuery AutoComplete 使用详解** jQuery AutoComplete 是一个非常流行的 jQuery 插件,它为输入框提供了自动补全功能,能够极大地提升用户体验。这个插件基于 jQuery 库,因此需要先引入 jQuery 才能使用。在本文...
你可以通过 CSS 自定义 AutoComplete 的样式,或者使用其他的 jQuery UI 主题。 ### 6. 示例项目 在提供的 `JqueryAutoCompleteDemo` 压缩包中,通常包含了完整的 HTML、CSS 和 JavaScript 文件,展示了如何使用 ...
### jQuery AutoComplete 使用指南 #### 一、简介 在现代Web开发中,为了提升用户体验,自动补全(AutoComplete)功能被广泛应用于搜索框、表单等交互元素中。jQuery AutoComplete插件作为一款轻量级且易于集成的...
《jQuery Autocomplete 全面解析》 jQuery Autocomplete 是一个非常实用的插件,它为网页表单输入框提供了自动补全功能,极大地提升了用户体验。这个压缩包“jquery autocomplete下载.rar”包含了实现这一功能所需...
**jQuery AutoComplete 使用详解** jQuery AutoComplete 是一个非常流行的 jQuery 插件,它为输入框提供了自动补全功能,常用于搜索框、表单输入等场景,极大地提升了用户体验。本篇将详细介绍如何使用 jQuery ...
**jQuery Autocomplete.js 插件使用详解** jQuery Autocomplete.js 是一个非常实用的插件,它为HTML输入框提供了自动补全功能,极大地提升了用户体验。这个插件基于jQuery库,结合Ajax技术,能够实时从服务器获取...
在本文中,我们将深入探讨 jQuery Autocomplete 的原理、配置选项、使用方法以及常见问题的解决策略。 ### 1. 基本原理 jQuery Autocomplete 主要通过监听用户的输入事件,然后根据预定义的数据源动态地生成下拉...
jQuery Autocomplete是一款非常实用的JavaScript插件,它允许用户在输入框中输入文字时,根据已有的数据集动态提供补全建议。这个功能在许多Web应用中被广泛使用,如搜索框、表单输入等。在给定的“jquery ...
标题中的“jQuery Autocomplete DWR结合 修改Data”指的是在Web开发中使用jQuery UI的Autocomplete组件与Direct Web Remoting (DWR)技术相结合,并对数据进行定制化处理的方法。jQuery Autocomplete是一个流行的UI...
`jQuery autocomplete` 是jQuery UI库中的一个组件,它为输入框提供了自动完成的功能,能够根据用户输入的文本动态地从服务器获取并显示建议的匹配项。这个功能对于提高用户体验,特别是处理大量数据时,如搜索或者...
本文主要介绍如何使用Jquery AutoComplete组件与Ajax技术来实现搜索框的实时输入提示功能。这种功能能够显著提升用户的交互体验,尤其是在需要大量数据检索的应用场景下。 #### 背景技术及术语解释 - **JQuery**:...
在IT行业中,jQuery Autocomplete是一个常用的插件,用于实现类似于搜索引擎的自动补全功能。它为用户提供了方便快捷的输入体验,尤其适用于大型数据集的筛选。本项目以"jQuery Autocomplete 仿百度搜索 只能搜索...
1,本示例是基于微软拼音类库的jquery.autocomplete自动拼音首字母匹配搜索实现,解决了多音字匹配问题。 2,由于用了Linq查询,所以至少需要.NET Framework 3.5。 4,由于jquery匹配时的match项和result项来自不同...
要使用 `jQuery AutoComplete`,首先需要在页面中引入 jQuery 和 jQuery UI(包括 `ui.core.js` 和 `ui.autocomplete.js`)。然后,通过 jQuery 选择器找到目标输入框,调用 `autocomplete` 方法并传入配置参数: `...
在本篇文章中,我们将深入探讨如何使用和配置 jQuery Autocomplete 插件,以及其背后的核心概念。 ### 1. jQuery Autocomplete 的基本原理 jQuery Autocomplete 是通过监听用户在输入框中的输入事件,根据输入内容...
《jQuery Autocomplete 智能联想框JS实现详解》 在网页开发中,为了提高用户体验,经常需要使用到一种功能——智能联想框。这个功能可以让用户在输入框中输入文字时,自动显示与输入内容相关的建议,就像百度搜索...
接下来,我们将深入探讨jQuery Autocomplete插件的使用方法、配置选项、事件和数据源。 **1. 安装与引入** 首先,确保已经安装了jQuery和jQuery UI库。如果你还没有,可以通过CDN链接或者下载到本地项目中。引入所...
在提供的“autocomplete 范例”中,可能包含了一个演示如何使用 `jQuery autoComplete` 的实例。这个例子可能包括 HTML 结构、CSS 样式和 JavaScript 代码,展示了如何实现根据输入的表名和字段名实时获取提示信息的...
在压缩包中的 `jquery.autocomplete使用方法.txt` 文件,应该包含了详细的使用示例和代码解释,你可以参考这个文件来了解如何在实际项目中应用 AutoComplete 插件。 ### 6. 扩展功能 jQuery AutoComplete 还支持...
3. **初始化组件**:使用jQuery选择器选择输入框,并调用`autocomplete`方法,传入相应的配置项和数据源。 ```javascript $(function() { $('#search').autocomplete({ source: ['选项1', '选项2', '选项3'], // ...