jQuery实现用户输入自动完成功能

发布时间 - 2026-01-10 23:01:52    点击率:

利用jQuery UI中Auto-complete插件实现输入自动完成功能,大家在使用诸如淘宝、京东等电商平台搜索商品时,往往只要输入商品的一些特殊字符,就可以显示出和该字符相近的列表菜单,用户使用鼠标或者键盘方向键就可以快速选择,实现了很好的用户体验。

1.最简单的用户输入自动完成

<!doctype html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <title>jQuery UI Autocomplete - Default functionality</title>
 <link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css" rel="external nofollow" >
 <script src="http://code.jquery.com/jquery-1.10.2.js"></script>
 <script src="http://code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
 <script>
 $(function() {
 //定义并初始化字典库数据源集合
 var availableTags = [
 "ActionScript",
 "AppleScript",
 "Asp",
 "BASIC",
 "C",
 "C++",
 "Clojure",
 "COBOL",
 "ColdFusion",
 "Erlang",
 "Fortran",
 "Groovy",
 "Haskell",
 "Java",
 "JavaScript",
 "Lisp",
 "Perl",
 "PHP",
 "Python",
 "Ruby",
 "Scala",
 "Scheme"
 ];
 //自动完成插件函数
 $( "#tags" ).autocomplete({
 //自动完成字典库数据源
 source: availableTags
 });
 });
 </script>
</head>
<body>
<div class="ui-widget">
 <label for="tags">请输入: </label>
 <input id="tags">
</div>
</body>
</html>

2 使用远程数据源自动完成

Auto-complete插件不光可以实现本地数据源的自动完成,也可以读取远程的数据源,列如实现从服务器端读取数据源信息。

通过将服务器数据缓存到浏览器中,获取的数据源首先保存在cache变量中。

 $(function() {
 //自定义缓存变量
 var cache = {};
 //自动完成插件函数
 $("#tags").autocomplete({
 //定义用户最少输入的字符数
 minLenght: 2,
 source: function(request, response){//定义远程获取数据源函数
 var term = request.term;//定义用户请求信息变量
 if(term in cache) {//判断请求数据是否存在缓存中
 response(cache[term]);//真,从缓存中读取数据
 return;
 }
 $.getJSON('data.json', request, function(data, Status, xhr) {
 cache[term] = data.result;//缓存远程数据
 response(data.result);
 });
 }
 });
 });

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# jquery  # 输入  # 自动完成  # PHP结合jQuery.autocomplete插件实现输入自动完成提示的功能  # 基于jquery实现的类似百度搜索的输入框自动完成功能  # 就可以  # 很好  # 鼠标  # 请输入  # 自定义  # 可以实现  # 淘宝  # 最简单  # 方向键  # 是否存在  # 只要输入  # 实现了  # 京东  # 特殊字符  # 器中  # link  # rel  # href  # stylesheet 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 百度输入法ai组件怎么删除 百度输入法ai组件移除工具  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  魔方云NAT建站如何实现端口转发?  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  免费网站制作appp,免费制作app哪个平台好?  如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  Laravel如何使用.env文件管理环境变量?(最佳实践)  网站页面设计需要考虑到这些问题  千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  在线制作视频的网站有哪些,电脑如何制作视频短片?  iOS发送验证码倒计时应用  Java解压缩zip - 解压缩多个文件或文件夹实例  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  如何快速生成可下载的建站源码工具?  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  JavaScript如何实现错误处理_try...catch如何捕获异常?  如何在Ubuntu系统下快速搭建WordPress个人网站?  Laravel如何处理和验证JSON类型的数据库字段  如何快速配置高效服务器建站软件?  微信小程序 配置文件详细介绍  制作电商网页,电商供应链怎么做?  如何彻底卸载建站之星软件?  js代码实现下拉菜单【推荐】  Linux安全能力提升路径_长期防护思维说明【指导】  Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  C++时间戳转换成日期时间的步骤和示例代码  如何在阿里云购买域名并搭建网站?  bing浏览器学术搜索入口_bing学术文献检索地址  黑客如何通过漏洞一步步攻陷网站服务器?  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】  长沙做网站要多少钱,长沙国安网络怎么样?  如何快速查询网址的建站时间与历史轨迹?  深入理解Android中的xmlns:tools属性  活动邀请函制作网站有哪些,活动邀请函文案?  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  Laravel Session怎么存储_Laravel Session驱动配置详解  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  Laravel如何实现文件上传和存储?(本地与S3配置)  清除minerd进程的简单方法  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  如何在自有机房高效搭建专业网站?  常州企业网站制作公司,全国继续教育网怎么登录?  Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置