news 2026/7/12 9:30:31

jQuery UI 实例 - 自动完成(Autocomplete)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
jQuery UI 实例 - 自动完成(Autocomplete)

jQuery UI Autocomplete(自动完成)实例

Autocomplete是 jQuery UI 中非常实用的组件,用于输入框提供智能建议列表,支持本地数据、远程 AJAX 数据、分类显示、自定义渲染等。常用于搜索框、标签输入、地址补全等场景。

官方演示地址:https://jqueryui.com/autocomplete/

下面提供几个渐进实例,从基础到高级,代码使用最新 CDN,可直接复制到 HTML 文件测试。

1.基础本地数据自动完成

使用数组作为数据源。

<!DOCTYPEhtml><html><head><metacharset="utf-8"><title>jQuery UI Autocomplete 基础示例</title><linkrel="stylesheet"href="//code.jquery.com/ui/1.13.2/themes/smoothness/jquery-ui.css"><scriptsrc="//code.jquery.com/jquery-3.6.0.min.js"></script><scriptsrc="//code.jquery.com/ui/1.13.2/jquery-ui.min.js"></script></head><body><label>编程语言:</label><inputid="autocomplete"><script>$(function(){varlanguages=["JavaScript","Java","Python","C++","C#","PHP","Ruby","Go","Swift","Kotlin"];$("#autocomplete").autocomplete({source:languages,minLength:2// 输入至少2个字符才触发建议});});</script></body></html>
2.带标签的对象数据 + 分类显示

使用对象数组,支持label(显示)和value(选中后填充值),并实现分类。

<script>vardata=[{label:"JavaScript",category:"前端"},{label:"HTML",category:"前端"},{label:"CSS",category:"前端"},{label:"Java",category:"后端"},{label:"Python",category:"后端"},{label:"Node.js",category:"后端"}];$("#autocomplete").autocomplete({source:data,minLength:1,// 自定义分类菜单_renderMenu:function(ul,items){varthat=this;varcurrentCategory="";$.each(items,function(index,item){if(item.category!=currentCategory){ul.append("<li class='ui-autocomplete-category'>"+item.category+"</li>");currentCategory=item.category;}that._renderItemData(ul,item);});}});</script><style>.ui-autocomplete-category{font-weight:bold;background:#eee;padding:5px;}</style>
3.自定义渲染(带图标或图片)

使用_renderItem自定义下拉项显示。

<script>$("#autocomplete").autocomplete({source:[{label:"Apple",icon:"https://via.placeholder.com/30?text=A"},{label:"Banana",icon:"https://via.placeholder.com/30?text=B"},{label:"Orange",icon:"https://via.placeholder.com/30?text=O"}]}).data("ui-autocomplete")._renderItem=function(ul,item){return$("<li>").append("<div><img src='"+item.icon+"' style='width:30px;vertical-align:middle;margin-right:10px;'>"+item.label+"</div>").appendTo(ul);};</script>
4.远程数据源(AJAX)

从服务器动态获取数据(模拟可用数据)。

<script>$("#autocomplete").autocomplete({source:function(request,response){$.ajax({url:"https://api.example.com/search",// 替换为你的APIdata:{term:request.term},success:function(data){response($.map(data,function(item){return{label:item.name,value:item.id};}));}});},minLength:2,delay:300// 延迟请求,防频繁输入});</script>
5.事件监听(select、change)
<script>$("#autocomplete").autocomplete({// ...select:function(event,ui){console.log("选中: "+ui.item.label+" (值: "+ui.item.value+")");},change:function(event,ui){if(!ui.item)console.log("未从列表中选择");}});</script>

小技巧

  • minLength: 0可实现点击输入框即显示全部建议。
  • 支持多选(Multiple values):查看官方 “Multiple, remote” 示例。
  • 移动端友好,默认支持触摸。

如果你需要多选标签输入结合 AJAX 从数据库搜索的完整后端示例,或带加载动画的版本,请告诉我更多需求!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/11 12:55:47

【Open-AutoGLM家务提醒安排】:揭秘智能家庭任务调度背后的AI黑科技

第一章&#xff1a;Open-AutoGLM家务提醒安排在智能家居场景中&#xff0c;利用大语言模型自动化处理日常任务正变得越来越普及。Open-AutoGLM 是一个开源框架&#xff0c;专为家庭事务调度设计&#xff0c;支持通过自然语言理解生成家务提醒&#xff0c;并与智能设备联动执行。…

作者头像 李华
网站建设 2026/7/12 9:57:38

Open-AutoGLM食材购买避坑指南:90%人忽略的3类关键营养匹配原则

第一章&#xff1a;Open-AutoGLM 食材购买推荐在构建 Open-AutoGLM 推理系统时&#xff0c;选择合适的硬件和软件“食材”至关重要。这些组件共同决定了模型运行的效率、响应速度以及扩展能力。核心硬件配置建议 GPU&#xff1a;推荐使用 NVIDIA A100 或 RTX 4090&#xff0c;支…

作者头像 李华
网站建设 2026/7/11 8:33:54

Open-AutoGLM任务中断恢复实战(断点续训技术大揭秘)

第一章&#xff1a;Open-AutoGLM任务中断恢复概述 在大规模语言模型训练与推理过程中&#xff0c;任务执行可能因硬件故障、网络中断或资源调度异常而意外终止。Open-AutoGLM 作为支持自动化代码生成与任务调度的框架&#xff0c;提供了任务中断恢复机制&#xff0c;确保长时间…

作者头像 李华
网站建设 2026/7/13 0:41:22

Linly-Talker如何避免‘恐怖谷效应’?外观设计心理学研究

Linly-Talker如何避免“恐怖谷效应”&#xff1f;外观设计心理学研究 在虚拟主播流畅地讲解产品、数字客服微笑着回应用户问题的今天&#xff0c;我们似乎已经习惯了与“非人类”进行自然对话。但你是否曾因某个数字人眼神空洞、口型错位而感到一丝不适&#xff1f;这种微妙的心…

作者头像 李华
网站建设 2026/7/12 16:03:46

基于Spring Boot的儿童福利院管理系统的设计与实现毕业设计

博主介绍&#xff1a;✌ 专注于Java,python,✌关注✌私信我✌具体的问题&#xff0c;我会尽力帮助你。一、研究目的本研究旨在设计并实现一个基于Spring Boot框架的儿童福利院管理系统&#xff0c;以提升儿童福利院的管理效率和服务质量。具体研究目的如下&#xff1a; 首先&am…

作者头像 李华