转载自:https://my.oschina.net/zimingforever/blog/63877
autocomplete是jqueryUI里的一个插件
效果和说明可以访问这里,作用类似于搜索时的自动提示:
http://jqueryui.com/demos/autocomplete/#default
今天项目中用到了这个插件
首先是引入文件,除了juqery和juqeryUI的基本文件外,还需要引入下面的文件
<!-- autocomplete --> <script src="<%=request.getContextPath()%>/share/js/jqueryPlugin/autoComplete/jquery.ui.core.js"></script> <script src="<%=request.getContextPath()%>/share/js/jqueryPlugin/autoComplete/jquery.ui.widget.js"></script> <script src="<%=request.getContextPath()%>/share/js/jqueryPlugin/autoComplete/jquery.ui.position.js"></script> <script src="<%=request.getContextPath()%>/share/js/jqueryPlugin/autoComplete/jquery.ui.autocomplete.js"></script>
接下来就是使用,js文件如下:
$( "#tags" ).autocomplete({ source: function( request, response ) { $.ajax({ url: "sql/sqlgetWebsqlDataBaseInforAjax", dataType: "json", data:{ searchDbInforItem: request.term }, success: function( data ) { response( $.map( data, function( item ) { return { dbId:item.dbid, jdbcUrl:item.jdbcUrl, ip:item.ip, port:item.port, sch:item.sch, username: item.username, password:item.password, value: item.labelview } })); } }); }, minLength: 1, select: function( event, ui ) { $("#dbInforDdId").val(ui.item.dbId); $("#dbInforDdjdbcUrl").val(ui.item.jdbcUrl); $("#dbInforIp").val(ui.item.ip); $("#dbInforPort").val(ui.item.port); $("#dbInforSch").val(ui.item.sch); $("#dbInforUserName").val(ui.item.username); $("#dbInforPassword").val(ui.item.password); } });
这段脚本是给tag这个input加入autocomplete插件,然后通过request.term取到模糊搜索的词,然后调用ajax返回一个json串到response中,其中用到了一个map函数。然后实现select方法,即把response的item通过ui.item写入到各个input中。实现数据自动填充。
其中,有个label和value参数,lable是下拉框中显示的值,value是选中后自动填充的值,可以分别设置,也可以只设置一个,例如我就只设置一个value。
效果如下:
接下来,对这个脚本加以改进,加入cache,这样就不用每次都通过ajax来获取。改进的脚本如下:
//autocomplete插件 //缓存 var cache = {}; $( "#tags" ).autocomplete({ source: function(request, response ) { var term = request.term; if ( term in cache ) { response( $.map( cache[ term ], function( item ) { return { dbId:item.dbid, jdbcUrl:item.jdbcUrl, ip:item.ip, port:item.port, sch:item.sch, username: item.username, password:item.password, value: item.labelview } })); return; } $.ajax({ url: "sql/sqlgetWebsqlDataBaseInforAjax", dataType: "json", data:{ searchDbInforItem: request.term }, success: function( data ) { cache[ term ] = data; response( $.map( data, function( item ) { return { dbId:item.dbid, jdbcUrl:item.jdbcUrl, ip:item.ip, port:item.port, sch:item.sch, username: item.username, password:item.password, value: item.labelview } })); } }); }, minLength: 1, select: function( event, ui ) { $("#dbInforDdId").val(ui.item.dbId); $("#dbInforDdjdbcUrl").val(ui.item.jdbcUrl); $("#dbInforIp").val(ui.item.ip); $("#dbInforPort").val(ui.item.port); $("#dbInforSch").val(ui.item.sch); $("#dbInforUserName").val(ui.item.username); $("#dbInforPassword").val(ui.item.password); } });
效果是一样的,只是第二次的时候从缓存中取得了数据不用再调用ajax了。
总结一下,autocomplete是jqueryUI的一个插件,可以实现自动填充的功能。它的source支持string和ajax传过来的json,另外还支持jsonp(没有深入研究)。可以改进脚本,加入cache来减少ajax的请求。
相关推荐
标题中的“jQuery Autocomplete DWR结合 修改Data”指的是在Web开发中使用jQuery UI的Autocomplete组件与Direct Web Remoting (DWR)技术相结合,并对数据进行定制化处理的方法。jQuery Autocomplete是一个流行的UI...
jQuery AutoComplete 是一个非常流行的 jQuery 插件,它为输入框提供了自动补全的功能,广泛应用于网页表单、搜索框等场景,以提高用户体验。这个插件允许开发者从本地数组或通过异步方式从服务器获取数据,实现动态...
综上所述,"jquery.autocomplete干净demo"提供了一个实用的起点,展示如何使用 jQuery 实现一个功能完善的自动完成功能。开发者可以根据自己的需求调整数据源、样式和事件处理,以满足特定项目的要求。这个干净的...
这个资源包包含了丰富的信息和实例,可以帮助开发者更深入地理解和应用jQuery Autocomplete插件。 **1. 插件介绍** jQuery Autocomplete是jQuery UI框架的一部分,它允许在输入框中实现自动填充功能,通常用于搜索...
本文将深入探讨如何使用jQuery实现Autocomplete插件,特别是在文本框下拉选项的应用。 首先,我们需要了解Autocomplete插件的基本原理。该插件通常与输入框绑定,当用户在输入框中输入字符时,它会实时查询后台数据...
总之,jQuery Autocomplete是一个强大且易于使用的插件,无论你是新手还是经验丰富的开发者,都能快速上手并利用其构建出高效、友好的Web界面。记得在实际项目中结合自身的数据结构和业务需求,充分利用插件的灵活性...
`jQuery UI Autocomplete`插件为网页开发提供了强大的自动补全功能,结合中文搜索和多列匹配,可以极大地提升用户体验。通过合理的数据处理和前端优化,我们可以创建高效、便捷的搜索界面。希望这份指南能帮助你更好...
**jQuery Autocomplete** 是一个非常流行的JavaScript库,用于在输入框中实现自动补全功能,类似于百度搜索框的体验...同时,了解如何与其他jQuery插件(如`jquery.ddcombobox`)结合使用,可以丰富你的前端开发技能。
我们可以使用jQuery的`ajax`方法获取数据: ```javascript $( "#search" ).autocomplete({ source: function(request, response) { $.ajax({ url: "search.php", data: { term: request.term }, dataType: ...
jQuery库提供了一个强大的插件——jQuery UI Autocomplete,本文将详细讲解其原理、使用方法以及一个基于2017年版本的`jquery.autocomplete.js`的实际示例。 首先,jQuery Autocomplete是jQuery UI库的一部分,它...
- **示例**: `demo` 文件夹包含了一些示例代码,帮助开发者了解如何使用插件。 - **文档**: 可能还包括 `README.md` 或其他文档文件,解释了插件的使用方法和配置选项。 ### 5. 自定义和扩展 - **自定义提示框**: ...
在实际项目中,jQuery UI Autocomplete可以与其他jQuery UI组件结合使用,如Dialog、Accordion等,构建出更复杂的用户界面。在lwme-jqueryui-demo这个压缩包中,可能包含了多个示例文件,它们展示了Autocomplete的...
在`MVCDemo`这个压缩包中,很可能包含了使用`jQuery.autocomplete.js`的一个完整示例。通常,这样的示例会包含HTML、CSS和JavaScript文件,以及可能的服务器端代码(如果使用了AJAX数据源)。开发者可以参考这个示例...
`jQuery.autocomplete`是jQuery UI库中的一个组件,它为输入框提供了自动补全功能,极大...在提供的`demo`文件中,可能包含了一个简单的`jQuery.autocomplete`使用示例,你可以参考并根据实际项目需求进行修改和扩展。
**jQuery Autocomplete组件详解** jQuery Autocomplete是jQuery UI库中的一个强大组件,它为用户提供了在输入框中输入文本时的自动补全功能。这个功能极大地提升了用户体验,尤其是在需要用户输入特定关键字或从...
- **demo.html**: 示例页面,展示了如何在实际项目中集成并使用 `jQuery Autocomplete` 自增版。通过查看此文件,我们可以了解如何设置输入框、调用插件方法、配置参数等。 - **jquery.js**: 这是 jQuery 库的核心...
jQuery Autocomplete 是一个非常实用的插件,它为输入框提供了自动完成功能,通常用于搜索、建议或者输入数据的辅助填充。这个功能极大地提升了用户界面的交互性和用户体验。在本文中,我们将深入探讨 jQuery ...
总的来说,jQuery的“可输入下拉框”插件是一种高效且灵活的UI组件,它将传统的下拉选择和现代的搜索功能相结合,提升了用户界面的交互性和实用性。对于前端开发者来说,掌握这种插件的使用和实现方式,无疑能增强...
总的来说,"jQuery 插件demo 自动补全"是一个结合了jQuery、事件处理、AJAX请求和数据库交互的示例项目,它展示了如何在前端实现一个自动补全功能,同时利用MyEclipse作为开发工具,为开发者提供了一个实践和学习的...
在这个名为"autoComplete 文字自动补全demo1"的项目中,我们可以看到一个使用jQuery插件实现的自动补全功能示例。 jQuery是一个强大的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互等任务。在...